데이터베이스에 중복 값을 가질 수없는 필드가있는 객체를 상상해보십시오. 필자의 첫 번째 본능은 속성에 데이터 주석으로 적용 할 수있는 고유 한 속성을 만드는 것이 었습니다. 이 고유 한 속성은 데이터베이스에 도달하여 값이 이미 존재하는지 점검합니다. 이것은 create 메소드를 실행할 때 작동하지만 업데이트시 실패합니다. 업데이트시, 값을 변경하지 않으려는 엔티티의 모든 고유 필드에 대해 중복 값 오류가 발생합니다. ModelState와 잘 어울리는 방식으로 ASP.NET MVC 2에서이를 수행하기위한 좋은 방법이나 기존의 관행은 무엇입니까? 내 객체의 id를 속성 검사기에 전달하면 발견 된 중복 값이 내가 업데이트하는 것과 동일한 엔터티인지 여부를 검사하여 작동 할 수 있지만 유효성 검사기 내부에서 해당 데이터를 가져 오는 방법을 알지 못합니다.유효성 검사를 사용하여 ASP.NET MVC 2에서 속성의 고유성을 적용하려면 어떻게해야합니까?
어리석은 질문이거나 비 일관 적으로 말하면 용서 해주십시오. 그것은 아침에 거의 3이고 나는 어제 아침 이후로 코딩을 해왔습니다.
데이터베이스가 유효성 검사를하도록하면 최상의 결정이됩니다. 내 응용 프로그램의 추가 쿼리를 사용하여 유효성 검사를 수행하면 실제 데이터 삽입 또는 업데이트를 수행 할 때 나중에 변경 될 수있는 상태를 알 수 있습니다. 데이터베이스에 이미 해당 제약 조건이 있지만 예외를 사용하여 오류 메시지를 표시하지 않았습니다. 내 관심사를 별도로 유지하려고했지만 컨트롤러에서 ModelState를 서비스로 전달하고 Repo에서 서비스로 전달하는 것과 같은 일을해야한다고 생각합니다. 나는 더 깨끗한 것을 원했다. – adolfojp