2011-02-10 3 views
0

Следующие коды работают. Но проблема в том, что когда я нажимаю ссылку на редактирование для редактирования продукта, все текстовые поля очищаются, но сообщение об ошибке работает. Это происходит потому, что выбран класс строго типизированного представления, содержащий сообщение об ошибке с регулярным выражением. Этот класс также используется для операции Create. Дело в том, что я хочу включить сообщение об ошибках, если текст остается пустыми или вводятся неверные данные, и пользователь пытается сохранить в этих условиях. Как это можно сделать, если это возможно. Я использую VS 2010, MVC C#, ADO.NET.Редактирование операции Проверка для ASP.NET MVC

[HttpPost] 
public ActionResult Edit(int id, FormCollection collection, 
         ProductCategory editCategory) 
{ 
    if (!ModelState.IsValid) 
    { 
      return View(editCategory); 
    } 

    var categoryToUpdate = db.ProductCategories.First(m => 
    m.ProductCategoryID == id); 
    ViewData.Model = categoryToUpdate; 
    TryUpdateModel(categoryToUpdate, new string[] { }, 
    collection.ToValueProvider()); 
    db.AddToProductCategories(editCategory); 
    db.SaveChanges(); 
    return View("/"); 
} 

ответ

0

Необходимо отправить модель своей модели.

Если вид называется Edit вам нужно:

return View(editCategory); 
+0

привет, да, это то, что он делает. В форме редактирования есть два текстовых поля. Один для названия категории и даты. Если я удалю строку из текстового поля для названия категории и оставьте ее пустой. Затем удалите дату из другого текстового поля. Если я попытаюсь сохранить данные, я получаю сообщение об ошибке для текстового поля даты, которое должно заполнить, но не отображается сообщение об ошибке для другого поля. Имею ли я смысл? – DiscoDude

0

Я понял это. Я закодировал синтаксис ошибки в операции редактирования, и он работает.

Смежные вопросы