如何将Linq与来自实体和WCF数据服务的数据连接起来?我有4个相关实体,如下所示:LocalAgencyAgencyOrganizationCustomer换句话说,LocalAgency有一个相关的代理机构等。使用实体框架(包括导航属性来细读这些关系)对数据建模,并设置一个WCF数据服务来向客户端提供该数据。在使用DataService的客户端,我试图根据客户名称返回对本地机构的查询,但还没有找到一种支持的方式来制定这个简单的查询。我尝试的第一种方法是使用Expand,就像这样:CustomerName)||i.Agency.Organization.Customer.CustomerName.Contains(CustomerName))选择i).Skip(StartIndex).Take(PageSize).ToList();如果“join”只有1层深,那么这个方法有效,但是无法获取navigation属性的navigation属性。然后我尝试这样加入:varitems=(fromlocalAgencyinContext.LocalAgenciesjoinagencyinContext.AgenciesonlocalAgency.CustomerIDequalsagency.CustomerIDjoinorganizationinContext.OrganizationsonlocalAgency.CustomerIDequalsorganization.CustomerIDjoincustomerinContext.localAgency.CustomerID上的客户等于customer.CustomerID,其中(String.IsNullOrEmpty(CustomerName)||customer.CustomerName.Contains(CustomerName))选择localAgency).Skip(StartIndex).Take(PageSize).ToList();但是,不支持此实例联接。然后我尝试使用Except方法如下:IQueryableitems=Context.LocalAgencies;items=items.Except(fromiinitemswhere(String.IsNullOrEmpty(CustomerName)||i.Agency.Organization.Customer.CustomerName.Contains(CustomerName))选择i).Skip(StartIndex).Take(PageSize);但是,不支持Except在这种情况下。我错过了什么?我是否需要在DataService端设置一些东西以允许沿着定义的导航属性进行简单连接?我在Expand上使用了错误的语法。我做了以下操作:以上是C#学习教程:HowtoconnectLinqwithdatafromentitiesandWCFDataServices?如果分享的内容对你有用,需要进一步了解C#学习教程,希望你多多关注——varitems=(fromiinContext.LocalAgencies.Expand("Agency").Expand("Agency/Organization").Expand("Agency/Organization/Customer")where(String.IsNullOrEmpty(CustomerName)||i.Agency.Organization.Customer.CustomerName.Contains(CustomerName))选择i).Skip(StartIndex).Take(PageSize).ToList();本文收集自网络,不代表立场。如涉及侵权,请点击右侧联系管理员删除。如需转载请注明出处:
