У меня есть Book
, и каждая книга может иметь несколько Chapter
. Каждый из Chapter
имеет один аудиофайл. Как я могу обновить одну строку суб-сущности главы?обновление одного столбца Stub Entity в asp.net mvc
Это моя модель:
public class Book
{
public Book()
{
this.Chapters = new List<Chapter>();
}
[Key]
public Int64 ISBN { get; set; }
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
public int BookID { get; set; }
public string bookName { get; set; }
public string bookAuthor { get; set; }
[DataType(DataType.Currency)]
public decimal bookPrice { get; set; }
public virtual ICollection<Chapter> Chapters { get; set; }
}
public class Chapter
{
public int ChapterId { get; set; }
public string chapterName { get; set; }
[ForeignKey("Book")]
public Int64 ISBN { get; set; }
public virtual Book Book { get; set; }
}
В Создать ActionResult
добавить новый Chapter
путем создания нового объекта из главы модели и добавить его с помощью book.Chapters.Add()
for (int i = 1; i < Request.Files.Count; i++)
{
var mfile = Request.Files[i];
if (mfile != null && mfile.ContentLength > 0)
{
var fileName = Path.GetFileNameWithoutExtension(mfile.FileName);
Chapter _bChapter = new Chapter()
{
chapterName = fileName,
chapterLink = BookDir + mfile.FileName
};
book.Chapters.Add(_bChapter);
mfile.SaveAs(Server.MapPath(_bChapter.chapterLink));
}
}
в Edit ActionResult я получаю новое аудио, используя HttpPostedFileBase
public ActionResult Edit(Book book, IEnumerable<HttpPostedFileBase> file)
{
if (ModelState.IsValid)
{
db.Entry(book).State = EntityState.Modified;
//do some File operation to save audio in server folder
db.SaveChanges();
return RedirectToAction("Index");
}
return View(book);
}
Но я не знаю, как сохранить новое загруженное аудио в главе суб объекта
Как выглядеть ваш _chapter суб entity_? Можете ли вы описать больше того, чего вы хотите достичь? –
@ m.wiśnicki я загружаю новый звуковой файл и загружаю его на свой хост, я хочу добавить путь к загруженному файлу в chapterName propery – AminM