[MVC] The model of type * could not be updated
От: Neco  
Дата: 14.04.10 11:26
Оценка:
Пытаюсь использовать MVC и EntityFramework.

При написании тривиальной Edit страницы, столкнулся с тем, что в моём случае UpdateModel не работает так как у людей в их уроках:
http://www.asp.net/learn/mvc/tutorial-16-cs.aspx
http://nerddinnerbook.s3.amazonaws.com/Part5.htm
http://www.asp.net/learn/mvc-videos/video-8145.aspx

Я попробовал три разных метода:
        [AcceptVerbs(HttpVerbs.Post)]
        //public ActionResult Edit(int id, Specific_Lecado.test_lookup1_table modified) {
        public ActionResult Edit(int id, FormCollection formValues) {
            Specific_Lecado.test_lookup1_table loaded = _db.test_lookup1_table.Where(t => t.id == id).First();
            UpdateModel(loaded); // ex: The model of type 'Specific_Lecado.test_lookup1_table' could not be updated.
            //UpdateModel(loaded, new string[] { "name" }, formValues.ToValueProvider()); ex: // Value cannot be null or empty. Parameter name: name
            //TryUpdateModel(loaded); // always false
            if (ModelState.IsValid) {
                _db.SaveChanges();
                return RedirectToAction("List");
            } else {
                return View(loaded);
            }
        }

В комментариях стоят проблемы, которые я испытываю для каждого варианта вызова UpdateModel.

Работает только если я ручками присвою каждое свойство. Можно написать и процедурку, которая это будет, но мне интересно, почему не работает так, как показано в примерах.

Не подскажете, что я делаю не так?
всю ночь не ем, весь день не сплю — устаю
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.