에 대한 탐색 속성의 목록을 얻기 위해 나는 저장소 패턴을 사용하여 수정 된 하나 기존 엔티티 업데이트하려고 방법 :EF5 내가 EF 5 코드 - 첫 번째 솔루션에서 일하고 있어요 도메인 오브젝트
public void UpdateValues(T originalEntity, T modifiedEntity)
{
_uow.Context.Entry(originalEntity).CurrentValues.SetValues(modifiedEntity);
을
내 단순화 된 도메인 객체는 다음과 같습니다 : 내가 가지고있는
public class PolicyInformation : DomainObject
{
//Non-navigation properties
public string Description {get;set;}
public bool Reinsurance {get;set;}
...
//Navigation properties
LookupListItemFormType FormType {get;set;}
...
}
문제는 CurrentValues.SetValues(modifiedEntity);
방법은 스칼라 복잡한 종류의 호텔이 아니라 탐색 속성을 업데이트 할 것으로 보인다는 것이다. 나는 많은 사람들에게 이런 일이 일어난 것을 보았지만 그 이유는 아직도 모른다. 나는 일반적인 저장소를 사용하기 때문에
_policyInfoRepo.UpdateValues(existingPolicyInfo, info);
existingPolicyInfo.FormType = info.FormType;
이 문제가된다 : 그러나, 나는 내 UpdateValues
모든 것을 실행 한 후 수동으로 그 탐색 속성을 설정하면 잘 작동하는지 알아 냈 어떻게에서 탐색 속성의 목록을 얻을 수 있습니다 내 도메인 개체? 아마도 linq, 반사 또는 다른 방법을 통해 내 저장소의 업데이트 방법이 루프를 통해 자동으로 설정할 수 있습니까? 이 같은
뭔가 :
public void UpdateValues(T originalEntity, T modifiedEntity)
{
//Set non-nav props
_uow.Context.Entry(originalEntity).CurrentValues.SetValues(modifiedEntity);
//Set nav props
var navProps = GetNavigationProperties(originalEntity);
foreach(var navProp in navProps)
{
//Set originalEntity prop value to modifiedEntity value
}
감사합니다!
우리는 'CrowdWorxEntities'가 무엇인지 알고 있어야합니까? –
그것은 DbContext ..입니다. –