사용자가 모델 객체에서 필드 집합을 업데이트 할 수있는 MVC 2 응용 프로그램에 양식이 있습니다. 이것은 모형 객체가 이미 존재하므로 완전히 업데이트 된 것입니다. 필수 필드가 입력되었습니다. 그러나 작은 필드 집합을 업데이트하려고 할 때 내 모델 개체에 TryUpdateModel
을 호출하면 오류가 발생하고 내 modelstate에 이미 채워진 필수 필드를 기반으로하는 오류가 있습니다. 이하지 않는 몇 가지 이유가,MVC2 tryUpdateModel의 포함 속성이 포함되지 않은 필드에 대한 유효성 검사를 무시하지 않음
[HttpPost]
public ActionResult Work(int id, FormCollection forms)
{
var lead = claimRepo.GetLeadByID(id);
if (lead == null)
return View("NotFound");
if (TryUpdateModel(lead, "Lead")) {...}
}
심지어 명시 적으로 진술 해봤 그래서
TryUpdateModel(lead, "Lead", new string[] { "Date", "UserID", ...}) {...}
처럼 업데이트 할 필드 그리고 그것은 계속 실패 : 여기
내 컨트롤러 코드 포함되지 않은 필드에 대한 유효성 검사를 무시하거나 잘못된 것을하고 있습니까?감사합니다.
내가 문제를 발견
편집, 안 데이터베이스가 백업 된 때문에 속성이 원인이 무엇을 의미하는지 반환하는 getter와 setter를 추가, 메타 데이터에 필요로 표시 한 내 클래스의 속성을 가지고 TryUpdateModel
을 전달해야하지만, 속성의 명시 적 포함이 내가 포함하지 않은 필드를 무시하지 않은 이유에 대해 궁금합니다.
또 다른 편집
나는 모든 데이터베이스가 명시 적으로 필드는 여전히 양식에서 누락 필드에 modelstate 오류가 발생 업데이트되고있는 상태하려고 필수 필드 및 백업으로뿐만 아니라 사용자 모델을 가지고 있지만 있습니다 업데이트되는 db의 모델 객체에 채워집니다.