fork download
  1. using System;
  2. using System.Collections.Generic;
  3. using System.IO;
  4. using System.Text;
  5. using System.Xml.Serialization;
  6.  
  7. namespace TestSGen
  8. {
  9. public class MyItem
  10. {
  11. public MyItem() {
  12. Values = new List<string>();
  13. }
  14.  
  15. public List<string> Values { get; private set; }
  16. }
  17.  
  18. class Program
  19. {
  20. static void Main()
  21. {
  22. var item = new MyItem {
  23. Values = { "A", "B", },
  24. };
  25.  
  26. var serializer = new XmlSerializer(typeof(MyItem));
  27. var builder = new StringBuilder();
  28. using(var writer = new StringWriter(builder)) {
  29. serializer.Serialize(writer, item);
  30. }//using
  31.  
  32. Console.WriteLine("Item:");
  33. Console.WriteLine(builder);
  34.  
  35. MyItem value;
  36. using(var reader = new StringReader(builder.ToString())) {
  37. value = (MyItem)serializer.Deserialize(reader);
  38. }//using
  39.  
  40. Console.WriteLine("Value: Values = {{{0}}}", String.Join(", ", value.Values.ToArray()));
  41. }
  42. }
  43. }
  44.  
Success #stdin #stdout 0.23s 41928KB
stdin
Standard input is empty
stdout
Item:
<?xml version="1.0" encoding="utf-16"?>
<MyItem xmlns:xsi="http://w...content-available-to-author-only...3.org/2001/XMLSchema-instance" xmlns:xsd="http://w...content-available-to-author-only...3.org/2001/XMLSchema">
  <Values>
    <string>A</string>
    <string>B</string>
  </Values>
</MyItem>
Value: Values = {A, B}