Suz*_*ane 3 wcf entity-framework-4.1
我是WCF和Entity框架的新手.
我有一个包含DatabaseEntities.edmx(实体框架objectContext)的类库"A" .
该库在FunctionB内部使用实体对象公开包含函数的类"B" .
我把这个库"A"引用到了WCF Web服务中并且在里面IService.cs- 我已经编写了这样的代码:
[OperationContract]
void FunctionB_Proxy();
Run Code Online (Sandbox Code Playgroud)
没有定义任何DataContract我已经进入Service1.cs并实现此功能如下:
public void FunctionB_Proxy()
{
ClassB x=new ClassB();//Class of ClassLibrary
x.FunctionB();
}
Run Code Online (Sandbox Code Playgroud)
这很好用.
但我的问题是:DataContract在WCF中是可选的吗?
提前致谢..
mar*_*c_s 10
从.NET 3.5 SP1开始 - 是的,[DataContract]不再需要了.
如果省略它,那么类将像XML序列化程序那样序列化:默认情况下,类的所有公共属性都将被序列化.
但是:如果您开始[DataContract]在您的类或您的[DataMember]某个属性上使用a ,那么您必须使用a来装饰要序列化的所有属性[DataMember].
所以它要么:完全省略这些属性(使用XML序列化程序使用的默认行为),或者然后具体并使用[DataContract]您要序列化的每个属性来装饰类[DataMember].我更喜欢第二种方法.
| 归档时间: |
|
| 查看次数: |
3028 次 |
| 最近记录: |