jjzjj

DataContract

全部标签

c# - 在DataContract中添加Name和Namespace有什么作用?

我尝试调用一个名为Register的WebInvoke方法,该方法返回接受一个User对象并立即返回该对象。它看起来像下面这样:UserRegister(Useruser){returnuser;}我不确定在调用http://localhost:8081/user/register时名称和命名空间属性对DataContract属性做了什么例如?我问的原因是因为我最初用这样的DataContract属性装饰我的类:[DataContract]publicclassUser{//Properties}当我打开Fiddler并发送一个Post请求时,它说方法不允许,但是当我将DataCont

c# - 在DataContract中添加Name和Namespace有什么作用?

我尝试调用一个名为Register的WebInvoke方法,该方法返回接受一个User对象并立即返回该对象。它看起来像下面这样:UserRegister(Useruser){returnuser;}我不确定在调用http://localhost:8081/user/register时名称和命名空间属性对DataContract属性做了什么例如?我问的原因是因为我最初用这样的DataContract属性装饰我的类:[DataContract]publicclassUser{//Properties}当我打开Fiddler并发送一个Post请求时,它说方法不允许,但是当我将DataCont

c# - 为每个派生类避免 KnownType 属性的普遍接受的方法

是否有一种普遍接受的方法来避免必须在WCF服务上使用KnownType属性?我一直在做一些研究,看起来有两种选择:DatacontractresolverNetDataContractSerializer我不太喜欢每次添加新类型时都必须静态添加KnownType属性,因此希望避免这种情况。是否应该使用第三个选项?如果是这样,它是什么?如果不是,以上两个选项中哪一个是正确的方法?编辑-使用方法第三种选择是使用反射[DataContract][KnownType("DerivedTypes")]publicabstractclassFooBase{privatestaticType[]De

c# - 为每个派生类避免 KnownType 属性的普遍接受的方法

是否有一种普遍接受的方法来避免必须在WCF服务上使用KnownType属性?我一直在做一些研究,看起来有两种选择:DatacontractresolverNetDataContractSerializer我不太喜欢每次添加新类型时都必须静态添加KnownType属性,因此希望避免这种情况。是否应该使用第三个选项?如果是这样,它是什么?如果不是,以上两个选项中哪一个是正确的方法?编辑-使用方法第三种选择是使用反射[DataContract][KnownType("DerivedTypes")]publicabstractclassFooBase{privatestaticType[]De

c# - 在 DataContract 中设置默认值?

如何为DataMember设置默认值例如下图所示:我想默认设置ScanDevice="XeroxScan"[DataMember]publicstringScanDevice{get;set;} 最佳答案 我通常使用这样的模式来完成此操作:[DataContract]publicclassMyClass{[DataMember]publicstringScanDevice{get;set;}publicMyClass(){SetDefaults();}[OnDeserializing]privatevoidOnDeserializi

c# - 在 DataContract 中设置默认值?

如何为DataMember设置默认值例如下图所示:我想默认设置ScanDevice="XeroxScan"[DataMember]publicstringScanDevice{get;set;} 最佳答案 我通常使用这样的模式来完成此操作:[DataContract]publicclassMyClass{[DataMember]publicstringScanDevice{get;set;}publicMyClass(){SetDefaults();}[OnDeserializing]privatevoidOnDeserializi

c# - 在 WCF 中使用 [DataContract] 而不是 [Serializable] 有什么优势

使用DataContract有什么好处? 最佳答案 看到一个很棒的comparisonofXmlSerializerandDataContractSerializer在DanRigsby的博客上。一些支持DataContractSerializer的观点:比XmlSerializer快10%将序列化任何用[DataMember]装饰的东西——即使它不是public可见的不会序列化任何内容除非您明确告诉它(“选择加入”)您可以使用[DataMember]上的Order=属性定义元素序列化的顺序不需要反序列化的无参数构造函数

c# - 在 WCF 中使用 [DataContract] 而不是 [Serializable] 有什么优势

使用DataContract有什么好处? 最佳答案 看到一个很棒的comparisonofXmlSerializerandDataContractSerializer在DanRigsby的博客上。一些支持DataContractSerializer的观点:比XmlSerializer快10%将序列化任何用[DataMember]装饰的东西——即使它不是public可见的不会序列化任何内容除非您明确告诉它(“选择加入”)您可以使用[DataMember]上的Order=属性定义元素序列化的顺序不需要反序列化的无参数构造函数

c# - DataContract 和继承?

如何使用继承的DataContract?下面的代码可以工作吗?[DataContract]publicclassConsoleData{[DataMember]publicStringDescription{get;set;}}[DataContract]publicclassSomeData:ConsoleData{[DataMember]publicintVolume{get;set;}...... 最佳答案 是的,那行得通。DataContractAttribute已将Inherited设置为false,因此有必要将该属性应用

c# - DataContract 和继承?

如何使用继承的DataContract?下面的代码可以工作吗?[DataContract]publicclassConsoleData{[DataMember]publicStringDescription{get;set;}}[DataContract]publicclassSomeData:ConsoleData{[DataMember]publicintVolume{get;set;}...... 最佳答案 是的,那行得通。DataContractAttribute已将Inherited设置为false,因此有必要将该属性应用