【发布时间】:2009-02-25 14:56:43
【问题描述】:
我在这个问题上想出了很多死胡同。据称,.NET 3.5 SP1 支持 WCF 合同中的 ADO.NET Entity Framework 实体。但是当我寻找关于它的可靠信息时,我并没有得到很多答案。我在 MSDN 线程上找到了这个 sn-p。有人对这个有经验么? [DataContract] 发生了什么?这就是它的全部吗?为什么这方面的资料这么少?
这是来自 Microsoft 的 Tim Mallalieu 的答案。
在实体框架中生成的实体类型默认是数据契约。 如果我要在实体设计器中创建一个简单的模型,如下所示: 购物车实体类型默认是一个 DataContract,所有属性都被注释为数据成员。然后我们可以在 WCF 服务中使用它,如下所示:
[ServiceContract]
public interface IService1
{
[OperationContract]
Cart[] AllCarts();
}
public class Service1 : IService1
{
public Cart[] AllCarts()
{
using (MSPetShop4Entities context = new MSPetShop4Entities())
{
var carts = from c in context.Carts select c;
return carts.ToArray();
}
}
}
由于实体是 DataContract,您现在可以根据需要滚动服务并通过网络发送这些服务。
【问题讨论】:
标签: wcf entity-framework