C#中的XML序列化和反序列化List <string>

耶拉曼

我有一个下课的对象

[XmlRoot("http://schemas.abc.com")]
[DataContract]
public class Employee
{
    [XmlAttribute]
    [DataMember]
    public List<string> Positions { get; set; }
}

职位包含以下两个字符串“项目经理”和“高级项目经理”

我通过以下方法将该对象序列化并保存在数据库中

public static string Serialize(Employee entity)
 {
    var memoryStream = new MemoryStream();
    var serializer = new XmlSerializer(typeof(Employee));
    using (var xmlTextWriter = new XmlTextWriter(memoryStream,
    Encoding.Unicode))
    {
         serializer.Serialize(xmlTextWriter, entity);
         xmlTextWriter.Close();
    }

    return UnicodeByteArrayToString(memoryStream.ToArray());
}
private static string UnicodeByteArrayToString(byte[] input)
{
   var constructedString = Encoding.Unicode.GetString(input);
   return constructedString;
}

然后我通过以下方法检索和反序列化对象

 public static Employee Deserialize(string str)
    {
        var data = StringToUnicodeByteArray(str);
        var memoryStream = new MemoryStream(data);
        var serializer = new XmlSerializer(typeof(Employee));

        var xmlTextReader = new XmlTextReader(memoryStream);
        return (Employee)serializer.Deserialize(xmlTextReader);
    }
 private static byte[] StringToUnicodeByteArray(string input)
 {
   var byteArray = Encoding.Unicode.GetBytes(input);
   return byteArray;
 }

现在我在位置列表中得到5个字符串对象

“项目”,“经理”,“高级”,“项目”,“经理”反序列化将在每个空格之后创建新的字符串对象

快速帮助将不胜感激

耶拉曼

尤金·波兹卡尔的回答

认为您应该删除XmlAttribute属性。XmlSerializer不知道如何解析属性字符串中的值,除非将其在空白处拆分。或者,您可以创建一个属性,该属性将为您提供String,该字符串允许明确区​​分其中的单个项目(例如,用逗号或其他内容),并且可以从设置为String的字符串中解析单个项目。此属性将是可序列化的,而实际的List将是XmlIgnore

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

C#中的XML序列化和反序列化List <string>

来自分类Dev

如何在 C# 中反序列化 Dictionary<string, string[]> ?

来自分类Dev

用C#中的枚举值反序列化Dictionary <string,object>

来自分类Dev

WCF List <string>序列化/反序列化错误

来自分类Dev

杰克逊:Map <String,Object>序列化和反序列化

来自分类Dev

使用 JSON.NET 反序列化和序列化字典<string, object>

来自分类Dev

将Dictionary <string,string>序列化/反序列化为XML

来自分类Dev

将Dictionary <string,string>序列化/反序列化为XML

来自分类Dev

反序列化Json String .net

来自分类Dev

反序列化字典<string,T>

来自分类Dev

Json String不会反序列化

来自分类Dev

Json String不会反序列化

来自分类Dev

不想反序列化的Json String

来自分类Dev

反序列化Json String .net

来自分类Dev

无法反序列化std :: list <std :: string>

来自分类Dev

Gson反序列化Map <String,List <SomeType >>

来自分类Dev

Jackson:部分反序列化到List <String>

来自分类Dev

如何在Dart中反序列化这种String?

来自分类Dev

在jQuery中迭代返回的C#序列化List <string>

来自分类Dev

C#使用JSON.NET反序列化Dictionary <(Enum,Enum),string>

来自分类Dev

无法反序列化VALUE_STRING中的java.util.List实例

来自分类Dev

如何在JsonResult MVC中反序列化JSON List <string>数据

来自分类Dev

使用Json.NET从Dictionary <string,T>派生的T类型的序列化和反序列化

来自分类Dev

SimpleXML反序列化Map <String,String>

来自分类Dev

C#中序列化和反序列化之间xml元素的保留顺序

来自分类Dev

使用 C# 中的注释部分序列化和反序列化 XML

来自分类Dev

如何反序列化JSON HashMap <String,Object>?

来自分类Dev

如何使用GSON反序列化Map <String,Object>

来自分类Dev

无法从 String 反序列化 int 类型的值

Related 相关文章

  1. 1

    C#中的XML序列化和反序列化List <string>

  2. 2

    如何在 C# 中反序列化 Dictionary<string, string[]> ?

  3. 3

    用C#中的枚举值反序列化Dictionary <string,object>

  4. 4

    WCF List <string>序列化/反序列化错误

  5. 5

    杰克逊:Map <String,Object>序列化和反序列化

  6. 6

    使用 JSON.NET 反序列化和序列化字典<string, object>

  7. 7

    将Dictionary <string,string>序列化/反序列化为XML

  8. 8

    将Dictionary <string,string>序列化/反序列化为XML

  9. 9

    反序列化Json String .net

  10. 10

    反序列化字典<string,T>

  11. 11

    Json String不会反序列化

  12. 12

    Json String不会反序列化

  13. 13

    不想反序列化的Json String

  14. 14

    反序列化Json String .net

  15. 15

    无法反序列化std :: list <std :: string>

  16. 16

    Gson反序列化Map <String,List <SomeType >>

  17. 17

    Jackson:部分反序列化到List <String>

  18. 18

    如何在Dart中反序列化这种String?

  19. 19

    在jQuery中迭代返回的C#序列化List <string>

  20. 20

    C#使用JSON.NET反序列化Dictionary <(Enum,Enum),string>

  21. 21

    无法反序列化VALUE_STRING中的java.util.List实例

  22. 22

    如何在JsonResult MVC中反序列化JSON List <string>数据

  23. 23

    使用Json.NET从Dictionary <string,T>派生的T类型的序列化和反序列化

  24. 24

    SimpleXML反序列化Map <String,String>

  25. 25

    C#中序列化和反序列化之间xml元素的保留顺序

  26. 26

    使用 C# 中的注释部分序列化和反序列化 XML

  27. 27

    如何反序列化JSON HashMap <String,Object>?

  28. 28

    如何使用GSON反序列化Map <String,Object>

  29. 29

    无法从 String 反序列化 int 类型的值

热门标签

归档