1

У меня простая форма с 4 входами на ней.Отправить форму с загрузкой файла

  • 2 Ввод текста
  • 2 флажков

Моя текущая модель представления, размещенные на сервере, как следующее:

public class MyViewModel { 
    public string FirstText { get; set; } 
    public string SecondText { get; set; } 
    public bool FirstBool { get; set; } 
    public bool SecondBool { get; set; } 
} 

Это работает хорошо. Теперь у меня есть требование, чтобы, когда значение SecondBool равно true, пользовательский интерфейс также должен загружать файл на сервер. Затем я модифицировал модель представления, чтобы добавить

public HttpPostedFileBase UploadedFile { get; set; } 

и модифицировал форму, имеющий атрибут enctype="multipart/form-data"

Я хотел бы использовать, так как я использую самозагрузки в рамках базового пользовательского интерфейса в jQuery File Upload плагин, но сделал не получить информацию о том, как отправлять и загружать файл в одно и то же время. Я знаю, что это должно быть очень легко сделать.

Подсказка?

ответ

2

Вам нужно будет добавить HttpPostedFileBase UploadedFile к вашему сообщению в вашем контроллере. Вы не можете пройти через модель.

E.g.

[HttpPost] 
public ActionResult MyAction(MyModel model, HttpPostedFileBase UploadedFile) 
{ 
    //..... Do stuff here 
} 
+0

Благодарим за ответ. Любое предложение о конфигурации клиентского плагина, пожалуйста? – Lorenzo

+0

Здесь есть хороший образец: http://powerdotnetcore.com/asp-net-mvc/asp-net-mvc-simple-ajax-file-upload-using-jquery – nik0lias

+0

@Lorenzo Если вы посмотрите на ссылку предоставленный nik0lias (http://powerdotnetcore.com/asp-net-mvc/asp-net-mvc-simple-ajax-file-upload-using-jquery), вы найдете отличный образец для добавления загрузки файла jQuery в проект MVC , – chxzy