问题标签 [datacontractserializer]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c# - DataContractSerializer C# 可以序列化,不能反序列化,为什么?
我有使用 WCF 和 C# 创建的应用程序,它的架构需要通过 App.config 添加 KnownTypes。我有这样的服务: Client -> CentralServer -> DataServer (其中 -> 是 WCF 连接) 现在,我以这种方式将 KnownTypes 添加到 CentralServer App.config 和 DataServer App.config 中:
我的问题是,调用方法 whitch 从 CentralServer 获取 DataServer 上的 MethodDeclaration 类型的参数会引发服务无法反序列化此参数的异常,尽管 CentralServer 可以对其进行序列化(我知道,因为当我删除 KnownType 时,我得到了服务无法序列化的异常)。此外,我有很多这样的方法以相同的方式定义,但接受不同的类型作为参数,它们工作得很好。您知道为什么(不)这样工作吗?
例外:
c# - DataContractSerializer 没有正确反序列化,对象中方法的值丢失
我的一些班级
我的 XML 文件:
但我的问题出在课堂上,我只在反序列化时为我的方法获取一些数据。
因此,当我检查“someClass”时,FirstName 的值为 john,但 LastName 将为空。
神秘的是我怎样才能得到一些数据,而不是类的所有数据。所以 DataContractSerializer 在反序列化时不会从 xml 中提取所有数据。
难道我做错了什么。
任何帮助表示赞赏。提前致谢。
让我知道是否有人有同样的问题或任何人有解决方案
serialization - 将 DataMember 添加到 DataContract 的不同命名空间
有了XmlSerializer
我可以让我的成员在与父类型不同的命名空间中。
我可以做同样的事情DataContractSerializer
吗?
我想要以下 XML:
这可能在 with 中DataContractSerializer
吗?
xml - XSLT 使用命名空间转换 XML
我正在尝试使用XSLT将一些XML转换为HTML。
问题:
我无法让它工作。有人可以告诉我我做错了什么吗?
XML:
XSLT:
wcf - 使用 WCF 和 DataContractSerializer 时出错
我有一个相当复杂的对象模型,我正在尝试使用 WCF 进行序列化。我遇到了一个问题,我可以在服务器上创建一个新实例并将其返回给客户端,然后尝试将相同的对象传回,甚至使用 DataContractSerializer 对其进行序列化会引发异常。
测试方法 Server.Service.Test.SerializationTest.TestFilingSerialization 抛出异常:System.Runtime.Serialization.SerializationException:反序列化 MyNameSpace.MyObject 类型的对象时出错。类型 '' 中的属性 '' 没有设置方法
它没有给我任何关于我应该丢失的 setter 的信息,即使我已经尝试通过继承层次结构查找丢失的 setter,我似乎无法通过这个。 MyObject是我要序列化的对象的一种属性,这是有趣的部分。在该属性的设置器中,我的代码如下所示:
如果我注释掉 Aggregates.Add 它进入下一个属性并在那里抛出相同的异常,踢球者是,它通过具有相同代码的其他属性,在它击中这个并死亡之前,所以我不知道是什么问题可能是。
任何人都知道真正的错误在哪里,因为属性名称和类型没有在异常中填写,所以看起来错误必须是别的东西。如果我只是在客户端上创建一个新实例,我可以反序列化和序列化没有问题,所以这里一定有我遗漏的东西。关于寻找什么的任何想法?
编辑
我实际上只是这样做:
- 创建实例
- 连载
- 反序列化
- 重新序列化
- 死在这里
c# - 具有多个命名空间的 DataContractSerializer
我正在使用 DataContractSerializer 将对象序列化为 XML。主要对象是名称空间为“ http://personaltrading.test.com/ ”的 SecurityHolding,并包含一个名为 Amount 的属性,它是一个名称空间为“ http://core.test.com ”的类。当我将其序列化为 XML 时,我得到以下信息:
无论如何我可以控制 d3p1 前缀吗?我做错了什么还是应该做其他事情?
.net - DataContractSerializer 的问题 - 如何正确序列化从 List 派生的对象?
观察以下示例代码:
请注意,ComplexObject<T>
源自List<T>
.
无论如何,最后一个断言失败了。替换[Serializable]
并附加到会产生相同[CollectionDataContract]
的否定结果。[DataMember]
m_state
就好像DataContractSerializer
通知类是一个集合并选择忽略它的其他状态。
鉴于以下情况,请建议任何人如何解决此问题:
- 我想尽可能少地
ComplexObject<T>
改变 DataContractSerializer
由于与这个问题无关的原因,我被困住了
提前非常感谢。
编辑:
wcf - 如何在运行时获取 WCF 操作使用的数据序列化程序
是否有机会在运行时(例如使用操作行为)获得操作(DataContractSerializer/NetDataContractSerializer/XmlSerializer 等)使用的数据合同序列化程序。我想要实现的是创建一些诊断代码,使用当前附加的序列化程序来序列化消息(在消息检查器中)以比较结果。
谢谢,帕维尔
.net - 使用 DataContractSerializer 序列化没有命名空间的对象
如何从使用 DataContractSerializer 序列化的对象的 XML 表示中删除 XML 命名空间?
该对象需要序列化为一个非常简单的输出 XML。
- 最新和最棒的 - 使用 .Net 4 beta 2
- 该对象永远不需要反序列化。
- XML 不应该有任何 xmlns:... 命名空间引用
- 需要支持 Exception 和 ISubObject 的任何子类型。
- 更改原始对象将非常困难。
目的:
需要序列化成:
我使用了这段代码:
从这篇文章中,我采用了 DataContractResolver ,因此不必声明子类型:
c# - C# DatacontractSerializer over Sockets 多个根元素
我正在使用 Sockets 和 DataContractSerializer 编写一个 Sivlerlight 聊天应用程序。
我有一个可序列化对象的类层次结构,其定义在 Silverlight 客户端和 C# 服务器之间共享。
当好友登录时,他们会向服务器发送一条消息,如果他们被验证,他们会收到一条确认消息,然后是几条消息,告诉他们还有谁在线(以及其他一些消息)。然后客户端等待套接字并准备好字节。然后它会尝试从生成的字节流中反序列化对象。然而,由于服务器已经发送了多条消息,字节流将包含多个元素的 xml,并且当它被反序列化时,会引发多根异常。
使用 DatacontractSerializer 从 Socket 反序列化对象流的标准解决方案是什么?
谢谢