草庐IT

MySQL-JDBC反序列化分析

全部标签

.net - 使用 IList<T> 的 NHibernate 和 XML 序列化

我最近开始使用NHibernate,总的来说非常喜欢它。直到我遇到需要序列化为XML并返回的问题。我有一个具有多对多关系的类,因此在父类中有一个IList来保存子对象列表。ClassparentClass{IListchildList;stringvarA;stringvarB;}我需要能够将其序列化为XML并返回,但显然IList阻止我这样做,因为NHibernate想要控制IList的具体实现,在本例中使用Bag。理想情况下,我想避免使用单独的DTO来替换列表,因为我使用NHibernate的主要动机是能够将它与POCO一起使用,而不必围绕它构建一个讨厌的框架。我知道能够使用ISe

c# - 当字符在 CDATA 中时,为什么 XML 序列化程序会抛出无效字符异常?

这个问题在这里已经有了答案:关闭10年前。PossibleDuplicate:Whyare“control”charactersillegalinXML?Savinganescapecharacter0x1binanXMLfile这会抛出一个ArgumentException:varc='\x1A';varxml=newXDocument(newXDeclaration("1.0","utf-8",null),newXElement("test",newXCData(c.ToString())));varfoo=xml.ToString();//ArgumentException为什么

c# - 使用 C# 在生成器设计模式中集成序列化和反序列化

我正在实现BuilderPattern为了生成一组对象。然后必须将这些对象序列化为XML并从XML反序列化。我知道如何执行序列化和反序列化,但我不确定如何将其集成到设计模式中。例如,假设我的代码使用构建器来创建产品foo和bar。我的第一个想法是在每个产品上放置一个序列化函数,因为每个产品都知道要序列化什么。我的下一个想法是将反序列化放在Director或ConcreteBuilder中。我不喜欢的是序列化和反序列化函数将位于不同的位置-一个在文件中用于声明foo和bar对象,另一个在文件中用于其他内容。我担心在我处理产品类时它们最终可能会变得不同步。我最后的想法是让Director或

c# - SQL Server 2008 错误 - XML 分析 : document parsing required too much memory

在XML解析器崩溃之前,我们在SQLServer2008中遇到了单个XML节点可以拥有的最大属性数的问题。我们收到的错误是:Msg6303,Level16,State1,Line1XMLparsing:Documentparsingrequiredtoomuchmemory这有点误导。将字符串转换为XML数据类型(或表列)时出现问题。SELECTCONVERT(XML,'')其中XXXXX其实是另外8191个属性。我们的数据集总共包含10,066个属性。当我们将属性数量减少到8,192时,效果很好。然而,8,193个属性崩溃。它似乎与数据大小没有任何具体关系(100MB或60KB无关紧

c# - 如何使用 .NET XML 序列化序列化正则表达式类型

如何将XML中的字符串序列化为Regex类型的类属性?这是XML文件中的元素:.+\\\\*\\.*.+)\\s*\\\"]]>.+\.[a-zA-Z0-9]+)\s*\""]]>在我序列化的类中,我具有以下属性:publicRegexIncludeRegex{get;set;}publicRegexIncludeDefineRegex{get;set;}类的其余部分序列化没有问题,但Regex属性序列化失败。一种选择是拥有替代属性:publicstringIncludeRegex{get;set;}publicstringIncludeDefineRegex{get;set;}[Xm

.net - XML 反序列化 : Deserialize missing element into null property value

我的xml文档有一个元素可以包含多个子元素。在我的类里面,我将该属性声明为:[XmlArray("files",IsNullable=true)][XmlArrayItem("file",IsNullable=false)]publicListFiles{get;set;}在反序列化过程中,如果元素丢失,我希望Files属性为null。但是,发生的情况是Files被反序列化为一个空的List对象。我该如何防止呢? 最佳答案 实现这一点的一个选项是封装列表:publicclassFoo{[XmlElement("files",IsNu

c# - 在 C# 中使用 Value 属性从 Xml 中反序列化枚举

我正在尝试用C#为图书导入工具编写一个ONIX。我首先使用Xsd2Code创建类,并获得了一个包含所有属性的巨大文件,经过一些调整后反序列化时不会产生任何错误。我试图一次性将整个元素反序列化为内存中的一个大对象,然后用它做一些事情(比如将它保存到数据库)。Xsd2Code生成类的方式,除了有很多属性之外,有点奇怪,至少对我来说是这样。下面是一个应该是Product对象的属性的类:publicpartialclassNotificationType{publicNotificationTypeRefnamerefname{get;set;}publicNotificationTypeSh

c# - 如何使用 XmlSerializer 将异构子节点反序列化为一个集合?

我正在使用C#/.NET反序列化一个类似于此的XML文件:""""""...""...MoreBooknodes...我的类,对于反序列化的XML,看起来像:[XmlRoot("Books")]publicclassBookList{//Othercoderemovedforcompactness.[XmlElement("Book")]publicListBooks{get;set;}}publicclassBook{//Othercoderemovedforcompactness.[XmlAttribute("Title")]publicstringTitle{get;set;}[

c# - 如何将 Dictionary<string, object> 序列化/反序列化为 XML

我正在尝试为我的应用程序编写一个保存例程,其中应用程序的多个部分将项目添加到字典,然后保存功能将它们写入XML文件。open例程需要读取这些文件并重新填充字典,然后我可以将这些对象放回我的应用程序中。我正在为我现在拥有的例程的反序列化而苦苦挣扎。我的保存流程如下XmlDocumentxmlDoc=newXmlDocument();//WritedowntheXMLdeclarationXmlDeclarationxmlDeclaration=xmlDoc.CreateXmlDeclaration("1.0","utf-8",null);//CreatetherootelementXml

asp.net - 如何使用多个嵌套项反序列化 XML?

我已经提供了无法更改的XML,我需要将其反序列化为自定义类:...otheradditionaladdresses...otherelements然后我反序列化:XmlSerializerserializer=newXmlSerializer(typeof(Person),namespace);Personperson=serializer.Deserialize(stream)asPerson;反序列化器在反序列化简单元素的情况下工作正常。当有像Addresses这样的元素时,我在它的类上实现IXmlSerializable,如下所示:linktext问题是reader.ReadEl