RIA 도메인 서비스와 함께 Entity Framework를 사용하는 경우 도메인 서비스는 LinqToEntitiesDomainService
에서 상속됩니다.이 서비스는 ORM으로 전파되는 낮은 수준 (클라이언트 쪽)에서 LINQ 쿼리를 만들 수 있도록 해줍니다. 즉, 모든 쿼리가 데이터베이스에서 수행되고 관련 결과 만 서버 및 클라이언트에 검색됩니다.RIA의 LinqToEntitiesDomainService에 해당하는 NHibernate
예 :
이virtual public IQueryable<Customer> GetCustomers()
{
return sessionManager.Session.Linq<Customer>();
}
이 방법의 문제가 있다는 것입니다 :
var query = context.GetCustomersQuery().Where(x => x.Age > 50);
는 지금 우리가 DomainService에서 상속과 같이 NHibernate에 세션을 통해 데이터를 검색하는 도메인 서비스를 전체 테이블을 서버 (또는 클라이언트)로 가져 오지 않고 특정 테이블을 필터링하지 않고 특정 쿼리를 작성하는 것은 불가능합니다.
EIA와 함께 작동하는 것처럼 RIA를 통해 NHibernate와 LINQ 쿼리 작업을 수행하는 방법이 있습니까? 그렇지 않으면 성능상의 영향이 너무 심하기 때문에 EF로 전환하려고합니다.
감사합니다.
감사합니다. 나는 그걸 깨달았습니다. System.ServiceModel.DomainServices.Client에 대한 참조를 추가하는 것을 잊었 기 때문에 쿼리가 제대로 작동하지 않습니다. 감사합니다. –