我正在寻找在WCF(n层应用程序)上使用Linq的任何示例或指南。请指定是向SQL显示Linq还是向实体显示Linq。我想看看两者的用法示例。
我想知道像deffered执行这样的东西是如何在WCF上工作的(如果它真的工作的话)?循环引用支持等等…
任何信息,使这一快速入门指南使用林克与WCF是有帮助的。
据我所知,没有任何LINQ提供程序可用于基于WCF的通用查询。但是,LINQ to ADO.NET Data Services允许您通过WCF/REST查询实体模型。
来自Andy Conrad的博客:
static void Main(string[] args)
{
var context=new WebDataContext("http://localhost:18752/Northwind.svc");
var query = from p in context.CreateQuery<Product>("Products")
where p.UnitsInStock > 100
select p;
foreach (Product p in query)
{
Console.WriteLine(p.ProductName+", UnitsInStock="+p.UnitsInStock);
}
}
您可以将Linq-to-SQL类添加到WCF服务中。然后转到Linq-to-SQL类中的数据上下文,并在属性中将SerializationMode设置为Unidirectional。
Linq-to-SQL类中的实体现在可以通过WCF服务使用:)
ADO.NET数据服务可能是您的最佳选择。有一个codeplex项目interiq可以将任意LINQ表达式与WCF一起使用,然后可以由另一个LINQ提供程序处理,如LINQ to NHibernate或LINQ to SQL。遗憾的是,这个项目似乎并不活跃。
祝你好运。