#asp.net-mvc #asp.net-mvc-3
#asp.net-mvc #asp.net-mvc-3
Вопрос:
Я работаю над asp.net mvc3 с помощью Ctrl для загрузки файлов.
Как установить путь к папке сервера в диалоговом окне открытия файла по умолчанию?
<input type="file" runat="server" name="@item.Id" id="fu_@item.Id" value="@Html.Encode(item.FileName)" title="@item.FileName" disabled="disabled" style="width: 700px;" />
runat=»server» Откроет диалоговое окно открытия файла сервера?
и как установить путь по умолчанию в этом?
есть ли какие-либо другие причины, пожалуйста. дайте знать..
Спасибо
Ответ №1:
Перво-наперво в ASP.NET MVC вы больше не должны использовать runat="server"
атрибут ни для одного из ваших элементов DOM в разметке. Что касается вашего вопроса о настройке папок по умолчанию в диалоговом окне «Открыть файл», по соображениям безопасности это невозможно сделать на клиенте.
Ответ №2:
Я не думаю, что вы можете это сделать, путь, по которому он открывается, полностью зависит от браузера пользователя, я не думаю, что вы можете повлиять на это.
Ответ №3:
Вот как вы это делаете…
Вы можете изменить путь по умолчанию для элемента управления FileUpload в MVC3…
в вашем файле .cshtml вы можете использовать такой подход или аналогичный…
using (Begin.Form("ActionName", "ControllerName", FormMethod.Post, new { new enctype="multipart/form-data", @id="Upload", path="System.Configuration.ConfigurationManager.Appsettings[@"DialogDefaultPath] }))
{
@Html.TextBoxFor(m => m.'YourPropertyToGetPath', new { @type="file", @id="fileUpload })
}
НЕОБЯЗАТЕЛЬНО, ТАК КАК я ИСПОЛЬЗУЮ НАСТРОЙКИ ПРИЛОЖЕНИЙ. ВЫ МОЖЕТЕ ЖЕСТКО ЗАПРОГРАММИРОВАТЬ ЕГО, ЕСЛИ ХОТИТЕ
в вашем Web.Config
<appSettings>
<add key="DialogDefaultPath" value="**DESIRED PATH**"/>
</appSettings>