gpt4 book ai didi

wcf - Entity Framework 数据合约

转载 作者:行者123 更新时间:2023-12-04 21:44:50 25 4
gpt4 key购买 nike

我是 WCF 和 Entity Framework 的新手。

我有一个类库“A”,其中包含 DatabaseEntities.edmx( Entity Framework objectContext)。

这个库公开了一个类“B”,它包含一个函数FunctionB,在内部使用实体对象。

我已将此库“A”引用放入 WCF Web 服务和 IService.cs 中 - 我已将其编码如下:

[OperationContract]
void FunctionB_Proxy();

没有定义任何 DataContract 我已经进入 Service1.cs 并实现了这个功能如下:

public void FunctionB_Proxy()
{
ClassB x=new ClassB();//Class of ClassLibrary
x.FunctionB();
}

这很好用。

但我的问题是:DataContract 在 WCF 中是可选的吗?

提前谢谢..

最佳答案

.NET 3.5 SP1 开始 - 是的,不再需要 [DataContract]

如果你省略它,那么类将像 XML 序列化器一样被序列化:你的类上的所有公共(public)属性都将默认被序列化。

但是:如果您开始在您的类上使用 [DataContract] 或在您的某个属性上使用 [DataMember],那么您必须[DataMember] 装饰你想要序列化的所有属性。

因此,要么:完全忽略这些属性(使用 XML 序列化程序使用的默认行为),要么具体化并使用 [DataContract] 和您想要的每个属性来装饰类用 [DataMember] 序列化。我更喜欢第二种方法。

关于wcf - Entity Framework 数据合约,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16881450/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com