ASP.NET MVC 4 C # HttpPostedFileBase, как хранить файл

Модель

public partial class Assignment { public Assignment() { this.CourseAvailables = new HashSet(); } public string AssignmentID { get; set; } public Nullable SubmissionDate { get; set; } public string Status { get; set; } public Nullable Mark { get; set; } public string Comments { get; set; } public string FileLocation { get; set; } public virtual ICollection CourseAvailables { get; set; } }} 

controller

  public ActionResult Create(Assignment assignment) { if (ModelState.IsValid) { db.Assignments.Add(assignment); db.SaveChanges(); return RedirectToAction("Index"); } return View(assignment); } 

Посмотреть

 
model.FileLocation, new { type="file"})%> model.FileLocation) %>

Как сохранить файл, если я хочу сохранить файл в папке server / path, а в базе данных я хочу сохранить имя / строку Path.

One Solution collect form web for “ASP.NET MVC 4 C # HttpPostedFileBase, как хранить файл”

вы можете загрузить файл и сохранить его URL в таблице базы данных следующим образом:

Посмотреть:

 @using(Html.BeginForm("Create","Assignment",FormMethod.Post,new {enctype="multipart/form-data"})) { ... 
< %: Html.TextBoxFor(model => model.FileLocation, new { type="file"})%> < %: Html.ValidationMessageFor(model => model.FileLocation) %>
... }

Действие:

 [HttpPost] public ActionResult Create(Assignment assignment) { if (ModelState.IsValid) { if(Request.Files.Count > 0) { HttpPostedFileBase file = Request.Files[0]; if (file.ContentLength > 0) { var fileName = Path.GetFileName(file.FileName); assignment.FileLocation = Path.Combine( Server.MapPath("~/App_Data/uploads"), fileName); file.SaveAs(assignment.FileLocation); } db.Assignments.Add(assignment); db.SaveChanges(); return RedirectToAction("Index"); } } return View(assignment); } 

Детали:

Для лучшего понимания обратитесь к этой хорошей статье. Загрузка файла (или файлов) с помощью ASP.NET MVC

Interesting Posts

Профиль пользователя Django

Как хранить данные на S3 и безопасный доступ пользователей к клиенту API / iOS с rails?

Ограничить использование пасты в выпадающих ячейках в excel

Графическое среднее и стандартное отклонение

Обновление Bash на Mac OSX

Поиск локальных максимумов и минимумов

Где установить настройку по умолчанию из папки «/ sys» в Fedora 18?

Есть ли поддержка в C ++ / STL для сортировки объектов по атрибуту?

Полиморфизм с gson

Как показать проценты, прошедшее время и приблизительное время?

Скопируйте раздел восстановления Windows 7 на загрузочный внешний диск

Могу ли я получить доступ к серверу разработки ASP.NET в интрасети?

Java – Как перетащить JPanel с его компонентами

Почему Windows 7 устанавливает 64-разрядные приложения в папку Program Files (x86)? Могу ли я изменить поведение?

Как форматировать строки в Java

Давайте будем гением компьютера.