2011-02-10 8 views
0

다음 코드가 작동합니다. 그러나 문제는 모든 텍스트 상자가 지워지지만 오류 메시지가 작동하는 편집 링크를 클릭하여 제품을 편집 할 때입니다. 이는 정규 표현식의 오류 메시지가 포함 된 Strongly Typed View 클래스가 선택되어 있기 때문에 발생합니다. 이 클래스는 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

안녕하세요, 그렇습니다. 이미지 편집 폼에는 두 개의 텍스트 상자가 있습니다. 범주 이름과 날짜 중 하나입니다. 텍스트 상자에서 범주 이름의 문자열을 제거하고 비워 둡니다. 그런 다음 다른 텍스트 상자에서 날짜를 제거하십시오. 세부 정보를 저장하려고하면 날짜 입력란에 오류 메시지가 표시되지만 입력란에 입력해야하지만 다른 상자에는 오류 메시지가 표시되지 않습니다. 나는 어떤 의미가 있습니까? – DiscoDude

0

내가 그것을 알아 냈어. 편집 작업에 오류 구문을 코딩했는데 작동 중입니다.