2009-11-05 2 views
0

엔티티 개체의 변경된 값을 자동으로 업데이트하고 db에 저장하는 방법은 무엇입니까?엔티티 개체의 변경된 값만 업데이트하십시오.

public ActionResult Update() 
    { 

     User userToUpdate = new User(); 
     TryUpdateModel<User>(userToUpdate,ValueProvider); 
     BaseRepository.Context.AttachTo("User",userToUpdate); 
     BaseRepository.Context.SaveChanges(); 
     return Json(""); 
    } 

ValuProvider 같은 작업을 HAVA : 포스트 데이터로 클라이언트에서 을 오는 항목이 있습니다.

이 코드의 문제점은 코드가 모든 값을 업데이트하지만 변경된 값만 업데이트하려고한다는 것입니다.

엔티티 개체에서 변경된 값을 어떻게 찾을 수 있습니까?

답변

0

당신은 당신을 위해 ... 당신의 답변을 msdn

0

두 가지 옵션 :

  • 보기에 당신은 자바 스크립트를 사용하여 변경된 값을 알 수 다음은 컨트롤러에 그 정보를 전달할 수 있습니다.
  • DB를 업데이트하기 전에 이전 값 (이미 뷰를 채운 이후로 이미 가지고있는 값)을 비교하고 각 값을 확인할 수 있습니다.

나는이 시점에서 데이터 유효성 검사도 확인할 수 있으므로 마지막 옵션을 선호합니다.

+0

감사 요구하는 것을 할 생각됩니다 ObjectContext.ApplyPropertyChanges 방법 을 확인해야합니다, 나는 또 하나의 내가 변경된 찾을 수있는 방법 생각 물어보고 싶은 내 엔터티 개체에 대한 값. – Yucel

0

이것은 실제로 데이터 액세스 코드에 문제가되며 컨트롤러와 관련이 없습니다. 이 문제를 처리하는 ORM을 선택하고 문제를 잊어 버리십시오.

관련 문제