2011-02-10 4 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

モデルを送り返す必要があります。

あなたのビューが編集命名されている場合は、単にする必要があります:私はそれを考え出した

return View(editCategory); 
+0

こんにちは、はい、それは何をしています。画像編集フォームに2つのテキストボックスがあります。カテゴリ名と日付の1つ。カテゴリ名のテキストボックスから文字列を削除し、それを空のままにします。次に、他のテキストボックスから日付を削除します。詳細を保存しようとすると、日付のテキストボックスにエラーメッセージが表示され、入力が必要だと言っても、他のボックスのエラーメッセージは表示されません。何か意味がありますか? – DiscoDude

0

。私は編集操作でエラー構文をコード化しています。

関連する問題