많은 Accounts
이 있으며 각 계정에도 하위 계정이있을 수 있습니다. 따라서 계정이 루트인지 알 수있는 내 방법은 ParentId
속성의 값 덕분입니다.
그래서 내 코드가 많은 장소에서 같은 물건을 가지고 있다고 밝혀졌다 : .Where(acc => acc.ParentId == 0)
그래서는 다음과 같습니다 속성을 만드는 방법에 대해 생각 :술어에서 사용할이 속성을 단순화하십시오.
public bool IsRootAccount
{
return a.ParentId == 0;
}
작동하는 것 같다, 그것은 컴파일하지만 내가 할 실행할 때 다음과 같은 예외 :
Load operation failed for query 'GetAccounts'. The specified type member 'IsRootAccount' is not supported in LINQ to Entities. Only initializers, entity members, and entity navigation properties are supported.
내가 원하는 것을 달성 할 수있는 간단한 방법이 있습니까?
또한 행운이없는 Expression<Func<Account, bool>>
을 반환하는 무언가를 만드는 것에 대해 생각했습니다.
편집 :IsRootAccount
속성에 대한 나의 시도는 여기에 내가 발견 뭔가하지만 내가 더 나은 아무것도가 있는지 싶습니다이 .Where(acc => acc.IsRootAccount)
'IsRootAccount'의 반환 유형이 반환 된 값과 일치하지 않습니다 ('bool'! = lambda). –
고마워, 고쳤어 ... 다른 속성에서 복사 했어. – sebagomez
이 속성을 사용하는 빌드하려고하는 쿼리를 표시 할 수 있습니까?여기서 원하는 것을 정확히 할 수 있을지는 의문이지만, 대안 솔루션을 제안 할 수 있습니다. –