C# 如何转换列表<;字符串>;到xml文档?

C# 如何转换列表<;字符串>;到xml文档?,c#,xml,C#,Xml,我现在有这个代码: List<string> BugWSResponseList1 = new List<string>(); Logger.Write("\n\n" + DateTime.Now + " : " + " : START : Creation of a set of Bugs via bug.Add API"); BugWSResponseList1 = CreateBugs(FilePath_EXPRESS_API_BugAd

我现在有这个代码:

List<string> BugWSResponseList1 = new List<string>();
Logger.Write("\n\n" + DateTime.Now + " : " + 
             " : START : Creation of a set of Bugs via bug.Add API");
BugWSResponseList1 = CreateBugs(FilePath_EXPRESS_API_BugAdd_CreateBugs_DataFile);
List BugWSResponseList1=newlist();
Logger.Write(“\n\n”+DateTime.Now+”:“+
“:开始:通过bug.Add API创建一组bug”);
BugWSResponseList1=CreateBugs(文件路径\u EXPRESS\u API\u BugAdd\u CreateBugs\u数据文件);
我想将
列表BugWSResponseList1
转换为xml文档


您能建议一种方法吗?

如果您将列表存储在一个类中,您可以编写如下内容:

[XmlType("Foo")]
public class Foo {

  [XmlArray("Items")]
  [XmlArrayItem("Item")]
  public List<string> Data {get; set;}

}
<Foo>
  <Items>
    <Item>Rock</Item>
    <Item>Paper</Item>
    <Item>Scissor</Item>
    <Item>Lizard</Item>
    <Item>Spock</Item>
  </Items>
</Foo>
[XmlType(“Foo”)]
公开课Foo{
[XmlArray(“项”)]
[XmlArrayItem(“项目”)]
公共列表数据{get;set;}
}
这将导致如下结果:

[XmlType("Foo")]
public class Foo {

  [XmlArray("Items")]
  [XmlArrayItem("Item")]
  public List<string> Data {get; set;}

}
<Foo>
  <Items>
    <Item>Rock</Item>
    <Item>Paper</Item>
    <Item>Scissor</Item>
    <Item>Lizard</Item>
    <Item>Spock</Item>
  </Items>
</Foo>

摇滚乐
纸张
剪
蜥蜴
斯波克

您可以非常轻松地使用LINQ实现以下目的:

var x = new XElement("bugs", 
    BugWSResponseList1.Select(t => new XElement("bug", t)));

Console.WriteLine(x.ToString());
使用

代码示例

List<string> ExampleList = new List<string>{"1", "b"};

var xml = ExampleList.SerializeToXml();
List ExampleList=新列表{“1”,“b”};
var xml=ExampleList.SerializeToXml();
序列化程序

public static string SerializeToXml<T>(this T obj)
{
    var serializer = new DataContractSerializer(obj.GetType());
    using (var writer = new StringWriter())
    using (var stm = new XmlTextWriter(writer))
    {
        serializer.WriteObject(stm, obj);
        return writer.ToString();
    }
}
公共静态字符串序列化XML(此T对象)
{
var serializer=新的DataContractSerializer(obj.GetType());
使用(var writer=new StringWriter())
使用(var stm=new XmlTextWriter(writer))
{
serializer.WriteObject(stm,obj);
返回writer.ToString();
}
}
导致

<ArrayOfstring xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.microsoft.com/2003/10/Serialization/Arrays"><string>1</string><string>b</string></ArrayOfstring>
1b
看看这个。你会有很多选择。