Я довольно новичок в MVC и делаю веб-приложение «Список дел». Я хочу разрешить пользователям прикреплять файл к задаче. Я прочитал, что мне нужно сохранить его в переменной типа байта.Загрузка файла в базу данных с помощью ASP.NET MVC
Мой контроллер:
public ActionResult AddTask (TaskModel t, HttpPostedFileBase file)
{
if (Session["UserID"] != null)
{
using (ToDoListEntities3 context = new ToDoListEntities3())
{
FilesTable ff = new FilesTable();
t.fileId = Convert.ToInt32(Session["UserID"]);
ff.FileId = t.fileId;
if (file.ContentLength > 0)
{
var fileName = Path.GetFileName(file.FileName);
var path = Path.Combine(Server.MapPath("~/App_Data/uploads"), fileName);
file.SaveAs(path);
ff.FileName = fileName;
var content = new byte[file.ContentLength];
file.InputStream.Read(content, 0, file.ContentLength);
ff.File = content;
}
Я был в состоянии хранить идентификатор и имя файла, но я не совсем понимаю, как эти файлы хранятся в БД. Что означает преобразование файла в байт?
в вашем коде, который вы храните в ("~/App_Data/uploads), а не Db. –