标签: xml-serialization

为什么XmlSerializer不需要标记类型[Serializable]?

在C#中,如果我想序列化一个实例XmlSerializer,那么对象的类型不必用[Serializable]属性标记.但是,对于其他序列化方法,例如DataContractSerializer,需要将类标记为[Serializable][DataContract].

是否有关于序列化要求的标准或模式?

c# xml-serialization datacontractserializer

16
推荐指数
2
解决办法
4543
查看次数

如何将XML转换为List <string>或String []?

如何将以下XML转换为List<string>String[]:

<Ids>
  <id>1</id>
  <id>2</id>
</Ids>
Run Code Online (Sandbox Code Playgroud)

c# xml xml-serialization

16
推荐指数
2
解决办法
6万
查看次数

如何(xml)序列化uri

我有一个我标记为Serializable的类,具有Uri属性.如何在不创建string类型属性的情况下让Uri序列化/反序列化?

.net c# xml-serialization

16
推荐指数
2
解决办法
1万
查看次数

XMLWriter与XMLDictionaryWriter

XMLWriter和之间有什么区别XMLDictionaryWriter?在哪些情况下每个人都使用?

.net xmlwriter xml-serialization

16
推荐指数
2
解决办法
9258
查看次数

将xml反序列化为对象时出错:System.FormatException输入字符串的格式不正确

您好,并提前感谢您的帮助.尝试使用XmlSerializer和StringReader将XElement反序列化为对象时遇到问题.我的反序列化代码是这样的:

/*deseierialize a single RegisterServerObject instance from xml*/
        static RegisterServerObject DeserializeSingleServerFromXml(XElement serverElement)
        {
            XmlSerializer deserializer = new XmlSerializer(typeof(RegisterServerObject));
            RegisterServerObject server;
            using (var reader = new StringReader(serverElement.ToString()))
                server = (RegisterServerObject)deserializer.Deserialize(reader);

            return server;
        }
Run Code Online (Sandbox Code Playgroud)

我知道例外所揭示的读者内容是:

<Server>
  <ServerID>11</ServerID>
  <GroupID />
  <ParentID>15</ParentID>
  <ServerName>IAProd1</ServerName>
  <User>admin</User>
  <UID>123</UID>
  <PWD>password</PWD>
  <Domain>InputAccel</Domain>
  <Location>Left</Location>
  <AssociatedModules>
    <Module>
      <ModId>1</ModId>
      <ServerId>11</ServerId>
      <ModName>TestModA</ModName>
      <ModuleStatus>1</ModuleStatus>
    </Module>
    <Module>
      <ModId>2</ModId>
      <ServerId>11</ServerId>
      <ModName>TestModB</ModName>
      <ModuleStatus>1</ModuleStatus>
    </Module>
    <Module>
      <ModId>9</ModId>
      <ServerId>11</ServerId>
      <ModName>TestModI</ModName>
      <ModuleStatus>1</ModuleStatus>
    </Module>
    <Module>
      <ModId>10</ModId>
      <ServerId>11</ServerId>
      <ModName>TestModJ</ModName>
      <ModuleStatus>1</ModuleStatus>
    </Module>
  </AssociatedModules>
</Server>
Run Code Online (Sandbox Code Playgroud)

我的RegisterServerObject类如下所示:

[XmlRoot("Server")]
    public class RegisterServerObject
    {
        public RegisterServerObject() { …
Run Code Online (Sandbox Code Playgroud)

c# xml silverlight xml-serialization xml-deserialization

16
推荐指数
1
解决办法
3万
查看次数

我可以在不实现IXmlSerializable的情况下为XmlSerializer提供自定义序列化吗?

我们正在使用XmlSerializer,我想为某些类提供自定义序列化.但是,我并不总是能够修改有问题的类的源代码,否则我可以让它实现IXmlSerializable.有没有办法做到这一点?

c# xml-serialization

16
推荐指数
1
解决办法
2万
查看次数

Xml序列化与"真"和"假"

我遇到了使用布尔值反序列化XML文件的问题.我反序列化的源XML文件是从VB6应用程序创建的,其中所有布尔值都是大写的(True,False).当我尝试反序列化XML时,我得到了一个

System.FormatException: The string 'False' is not a valid Boolean value.
Run Code Online (Sandbox Code Playgroud)

有没有办法说用属性忽略大小写?

c# xml boolean xml-serialization

15
推荐指数
3
解决办法
2万
查看次数

什么是Jaxb等效的Text节点值?

我希望转换一个看起来像这样的类......

public class Amenity {
   public String id;
   public String value;
}
Run Code Online (Sandbox Code Playgroud)

使用JaxB注释将以下XML转换为以下XML:

<amenity id="id-string-here">value-string-here</amenity>
Run Code Online (Sandbox Code Playgroud)

有谁知道在value成员变量上使用什么注释来完成这个?我到目前为止最接近的是:

@XmlRootElement
public class Amenity {
   @XmlAttribute
   public String id;
   @XmlElement
   public String value;
}
Run Code Online (Sandbox Code Playgroud)

不幸的是,这种方法不允许我指定value不应将成员变量呈现为自己的标记<value></value>.

java annotations jaxb xml-serialization jaxb2

15
推荐指数
1
解决办法
1万
查看次数

在Objective-c/iPhone中创建自定义类可序列化?

如何使自己的自定义类可序列化?我特别想把它写到iPhone上的文件中,只是plist而你的类只是一个简单的实例类,只是NSStrings而且可能是NSUrl.

iphone serialization objective-c xml-serialization

15
推荐指数
1
解决办法
1万
查看次数

我何时应该在.NET框架中使用XML序列化与二进制序列化?

我很困惑 - 我应该何时使用XML序列化,何时应该在.NET框架中使用二进制序列化?

.net c# serialization xml-serialization binary-serialization

15
推荐指数
2
解决办法
2万
查看次数