레코드 편집을 허용하는 webapp를 개발 중입니다. 한 번에 두 명의 사용자가 한 번에 같은 화면에서 작업 할 수 있으며 둘 다 클릭하면 저장 한 피해를 최소화하고자합니다.MVC에서 변경된 모델의 속성 만 업데이트하려면 어떻게해야합니까?
User1이 페이지를 요청한 다음 주소, 전화 및 연락처 세부 정보를 변경하지만 저장을 클릭하기 전에 User2가 동일한 페이지를 요청하는 경우
User1은 저장을 클릭하고 TryUpdateModel()을 사용하여 전체 모델을 업데이트합니다. User2가 메모 필드에 일부 정보 만 추가하면 저장하면 TryUpdateModel() 메서드가 User1이 저장 한 새 세부 정보를 이전 정보로 덮어 씁니다. 세부.
모든 모델의 속성에 대한 원래 값을 숨겨진 양식 필드에 저장 한 다음 변경된 속성 만 업데이트하기 위해 사용자 지정 TryUpdateModel을 작성하는 것으로 생각했지만이 역시 우리가 가진 Viewstate와 조금 비슷합니다. MVC로 옮겨 가면서 기꺼이 떠나는 것보다 더 기뻤습니다.
내가 알고있는이 문제를 처리하기위한 패턴이 있습니까?
어떻게 처리하겠습니까?
업데이트 : 아래 의견에 대한 답변에서 Entity Framework를 사용하고 있습니다. 한 사용자가 작업하는 동안 페이지의 수정을 잠금
앤서니
이 작업은 Repository/DataContext 수준에서 처리 할 수 있습니다. 데이터베이스/데이터 액세스 방법은 무엇입니까? –
예 .. 사용하는 ORM을 알려 주시면 대부분의 ORM이 동시 처리 문제를 처리 할 수있는 방법을 제공합니다 (예 : Linq에서 SQL/Entities). 귀하가 설명한 내용입니다. – CraftyFella