DB에서 엔터티를 검색 할 때 "부모 속성"을 포함하는 동적 인 방법을 사용하고 있습니다. 그러나 속성이 값 유형 (또는 문자열)인지 또는 항목의 ienumerable (해당 항목 제외)인지 확인하기 때문에 complextypes로 정의 된 항목도 포함됩니다. 이것은 예외로 이어질 것입니다.Entity Framework 4.3 POCO 포함 복잡한 형식에 예외가 throw됩니다
엔티티가 복합 유형으로 정의되었는지 여부를 확인할 수 있습니까?
public IEnumerable<object> LookupExtent(Type type)
{
var set = Set(type);
DbQuery q = null;
foreach (var prop in type.GetParentProperties())
{
if (q == null)
q = set.Include(prop.Name);
else
q = q.Include(prop.Name);
}
return q.ToObjectArray();
}
PS :
이 예제 코드를 참조하십시오 예 내가 부모 속성이없는 경우이 실패합니다 알고 ...
나는 귀하의 우려 사항을 이해하고 있으며 무엇을 달성하려고하는지는 "기본 사용 사례"가 아닙니다. 매우 특별한 경우에만이 오토 매직을 사용하겠습니다. 기본 경우에는 상위 또는 하위 속성이 포함되지 않으며 해당 속성의로드가 명시 적으로 명시되어야합니다. 나는 당신의 코드를 시험해보고 대답으로 당신의 것을 표시 할 것이다. 나는 사무실에 돌아 왔을 때 (다음 월요일), 조금만 기다려야한다 ;-) – UrbanEsc