datacontract相关内容

配置 JSON.NET 以忽略 DataContract/DataMember 属性

我们在使用 Microsoft JSON 序列化程序和 JSON.NET 的 MVC3 项目中遇到了情况. 每个人都知道微软的序列化器中的 DateTime 基本上被破坏了,所以我们切换到 JSON.NET 来避免这个问题.这很好用,除了我们尝试序列化的一些类是具有 DataContract/DataMember 属性的 POCO.它们是在一个在多个位置引用的程序集中定义的.此外,它们还有一 ..
发布时间:2022-01-11 21:45:36 C#/.NET

有没有办法从 DataContract 导出 XSD 架构

我正在使用 DataContractSerializer 将我的类序列化/反序列化到 XML.一切正常,但在某些时候,我想为这些 XML 文件的格式建立一个独立于实际代码的标准模式.这样,如果序列化过程中出现问题,我总是可以返回并检查标准模式应该是什么.或者,如果我确实需要修改架构,那么修改是一个明确的决定,而不仅仅是修改我的代码的后续影响. 此外,其他人可能正在编写其他可能不是基于 .NE ..
发布时间:2022-01-09 22:09:00 C#/.NET

从 XSD 生成 DataContract

我希望能够从 XSD 文件生成 DataContract,最好使用 xsd.exe 工具.在我的每个项目上自动生成 [DataContract] 和 [DataMember] 的最简单方法是什么? 或者有更好的方法吗?我试图避免每次更改和重新生成 XSD 文件时都必须重新创建数据协定. 解决方案 xsd.exe 工具早于 WCF 并且对 [DataContract] 和 一无所知代码 ..
发布时间:2021-12-13 20:20:32 C#/.NET

WCF DataContract 中的构造函数未反映在客户端上

当我在客户端创建 DataContract 的实例时,我需要让一些数据成员获得一些值.使用构造函数不会发生这种情况.我搜索了不同的论坛,发现我们必须使用 [OnDeserializing] 和 [OnDeserialized] 属性.这也行不通.有人可以在这里提出建议.另一种选择是在客户端的部分类中创建构造函数.我想避免这种情况. 请在下面找到代码: 服务端:数据合约 [数据契约]公 ..
发布时间:2021-12-13 20:13:00 其他开发

数据契约中的 IsReference 属性

DataContract 中 IsReference 属性的用途是什么?应用此属性后,请求和响应有何不同? 解决方案 它决定了对象如何序列化,默认情况下,IsReference=false. 设置 IsReference = true 允许序列化可以相互引用的对象树.因此,对于 Employees 的列表,每个列表都有一个 Manager 的属性(他也是 Employee),一个对 ..
发布时间:2021-12-13 20:00:31 其他开发

如何在 WCF 中使用自定义序列化或反序列化在数据联系人的每个属性上强制一个新实例?

我与许多拥有自定义类的成员有一个数据联系人 如果反序列化时属性为空,我想强制创建一个新实例. 有没有办法做到这一点? 解决方案 如果您正在使用 DataContract 序列化,那么您可以使用 OnDeserialized 属性覆盖其默认行为. 来自 MSDN:当应用于方法时,指定在对象图中的对象反序列化期间调用该方法.相对于图中其他对象的反序列化顺序是不确定的. ..
发布时间:2021-12-13 19:53:14 C#/.NET

[DataContract] 的命名空间

我找不到用于 [DataContract] 和 [DataMember] 元素的命名空间.根据我的发现,添加以下内容似乎就足够了,但在我的情况下还不够. 使用系统;使用 System.Runtime.Serialization; 这是我的代码片段: 使用系统;使用 System.Runtime.Serialization;命名空间我的命名空间{[数据合约]公共类元组{//一个元组的自定义实现 ..
发布时间:2021-12-13 19:46:56 C#/.NET

WCF:在未设置的情况下公开只读 DataMember 属性?

我有一个服务器端类,我通过 [DataContract] 在客户端提供它.这个类有一个只读字段,我想通过属性提供它.但是,我无法这样做,因为似乎不允许我在没有 get 和 set 的情况下添加 [DataMember] 属性. 那么 - 有没有办法在没有 setter 的情况下拥有 [DataMember] 属性? [数据契约]类 SomeClass{私有只读 int _id;公共 Som ..
发布时间:2021-12-13 19:40:46 C#/.NET

何时使用 DataContract 和 DataMember 属性?

我对 WCF 中的 DataContract 属性感到非常困惑.据我所知,它用于序列化用户定义的类型,如类.我写了一个这样在客户端暴露的类. [数据契约]公开课联系方式{[数据成员]公共 int 滚动 { 获取;放;}[数据成员]公共字符串名称 { 获取;放;}[数据成员]公共字符串地址{获取;放;}[数据成员]公共整数年龄{得到;放;}} 它工作正常,但是当我删除 DataContract ..
发布时间:2021-12-13 19:26:27 其他开发

DataContract XML 序列化和 XML 属性

是否可以将此 XML 反序列化为标有 DataContract 属性的对象? 1000 如您所见,有“单位"属性.我不相信这是支持的.还是我错了? 解决方案 这可以实现,但您必须通过将 [XmlSerializerFormat] 属性应用于 DataContract 来覆盖默认序列化程序.虽然可以做到,但它的性 ..
发布时间:2021-12-03 14:25:06 C#/.NET

将 WCF 与抽象类一起使用

如何在 WCF 中为抽象类定义 DataContract? 我有一个“人"类,我使用 WCF 成功地与它通信.现在我添加一个从 Person 引用的新类“Foo".一切都还好.但是当我使 Foo 抽象并定义一个子类时,它失败了.它在服务器端失败并出现 CommunicationException,但这并不能告诉我太多. 我为测试而制作的简化类: [数据契约]公开课人{公众人物(){S ..
发布时间:2021-11-25 09:59:38 C#/.NET

我们可以将通用列表 (List) 作为参数发送给 WCF OperationContract 吗?

我们可以将通用列表 (List) 作为参数发送给 WCF OperationContract 吗? 似乎唯一的方法是将 List 作为 DataMember 封装在另一个 Class 中,并将该类指定为 DataContract: 但这在我看来不太合适.还有其他办法吗? EDIT1: 预期签名: [操作契约]列表OperationName(List objects); 这在 ..

在原始列表上使用 DataContractSerializer 的自定义元素名称

我对在 DataContractSerializer 中使用原始元素列表时设置自定义元素名称的最佳方法感兴趣.假设我有以下类,其中包含一个字符串列表作为 DataMember. [数据契约]公共类类名{[数据成员]公共列表字段名称 { 获取;放;}} 默认情况下,这会序列化为以下内容: ..
发布时间:2021-09-22 19:00:37 C#/.NET

如何将Excel文件从WinForms客户端传递到WCF服务以及SQL Server表中?

如何将Excel文件从WinForms客户端传递到WCF服务并传递到SQL Server表中? 任何人都可以提供任何指导,代码或建议吗? 将Excel文件作为参数的WCF服务合同和实现 合同实施应将该Excel文件插入SQL Server的varbinary(MAX)列中. 解决方案 我相信那里的专家可以对此进行改进,但这是基础知识... 在服务器上 1a.将新的 ..
发布时间:2020-07-30 20:34:40 数据库

数据合同序列化错误

这是 如何在所有类成员上设置[DataMember] 所以我必须使用字典和其他成员序列化一个类. 我选择了本身的数据上下文序列化 public SimpleDataGridSample() { if (false) { MyClass theclass = new MyClass(); var serialize ..
发布时间:2020-07-30 20:33:24 C#/.NET

无法对派生类进行反序列化.但是,如果它在列表或字典中,它就可以工作.有什么想法吗?

我遇到一个奇怪的问题,如果我将一个派生类放到一个列表中,但是当它独立存在时就不能序列化. 我正在使用这些方法进行序列化和反序列化(在在此处找到它们): public static string Serialize(T obj) { using (MemoryStream memoryStream = new MemoryStream()) ..
发布时间:2020-07-30 20:33:20 C#/.NET