Entity Framework에는 변경 내용을 추적하는 각 모델마다 Proxy 클래스를 생성 할 수있는 옵션이 있습니다. 기본적으로 자체 추적 속성으로 객체를 래핑합니다.
기본적으로, 당신은 내가 실제 내부의 잘 모르겠어요 (그것을 이런 식으로 뭔가를 구현 구상 할 수 있지만 이것은 당신이 어떻게하는지 정확히를보고 싶은 경우 디 컴파일 수 있으며, 이론에 조금 도움이 될 것입니다) :
각 필드에 대해 복제이와 분명히
internal List<string> ChangedFields = new List<string>();
private string _name;
public string Name
{
get { return _name; }
set {
ChangedFields.Add("Name");
_name = value;
}
}
, 각 필드는 다음 ChangedFields
에 추적을 변경합니다.
다시, 즉, 명시 적 get
/set
와 속성을 사용하여 작업 할 수있는 방법의 설명을위한 순수하지특히 엔티티 프레임 워크가 어떻게하는지.
감사합니다. 메모리에 수정 된 개체와 원래 개체가 있습니까? 나는 그 행이 많은 행에 어떻게 작용하는지 궁금해. 하지만 옴이 변경 사항을 추적 할 수있는 다른 방법은 없다고 생각합니다. –
대개 수 많은 엔티티를 한 번에 수정하지 않을 것입니다. 일반적인 작업 과정에서는 많은 수의 레코드를 표시하고 사용자가 수정 및 업데이트 할 레코드를 선택하도록합니다. DAL에서 "추적 없음"옵션을 사용하는 간단한 "읽기"와 변경 내용 추적을 사용하여 읽는 "읽기 위해 읽음"과 다른 작업을하는 것이 유용 할 수 있습니다. – LeffeBrune