Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/301.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 将DataROW类型列表转换为XML_C#_.net_Xml_Linq To Xml - Fatal编程技术网

C# 将DataROW类型列表转换为XML

C# 将DataROW类型列表转换为XML,c#,.net,xml,linq-to-xml,C#,.net,Xml,Linq To Xml,我的清单如下: List<datarow> list = getxml_table.AsEnumberable().ToList(); 首先-DataRow本身不包含数据(至少如果我们讨论的是标准的ADO.NETDataRow)。存储在DataRow的具体“单元”中的数据(类似于DataRow[“column\u name”]) 下一步-为什么需要XmlSerializer?也许我还没有完全理解您的问题,但对我来说,您似乎有列表,并且在每行的某个单元格中有一些包含xml数据的字符

我的清单如下:

List<datarow> list =  getxml_table.AsEnumberable().ToList();

首先-
DataRow
本身不包含数据(至少如果我们讨论的是标准的ADO.NET
DataRow
)。存储在
DataRow
的具体“单元”中的数据(类似于
DataRow[“column\u name”]

下一步-为什么需要
XmlSerializer
?也许我还没有完全理解您的问题,但对我来说,您似乎有
列表
,并且在每行的某个单元格中有一些包含xml数据的字符串

因此,您可以将这些字符串写入文件,如(伪代码):

List List=getxml_table.AsEnumberable().ToList();
使用(var writer=newstreamwriter(@“c:\temp\1.txt”))
{
foreach(列表中的变量行)
{
writer.WriteLine(行[“列名称]);
}
}

Hmm。。。。不太清楚你的问题是什么。您是否可以详细说明并展示一些您正在进入列表的数据示例以及您如何将其写入文件的代码示例?请参阅编辑您是否尝试通过DataRow.Item属性读取DataRow的xml内容并将其保存在文件中?使用此方法如何添加xml标头和加密。我是否手动执行此操作。您可以在循环数据行之前使用
writer.WriteLine(您的\u头)
在同一文件中预先添加头。在像您这样的用例中,我不会费心解析然后序列化xml——还有什么比将现有xml数据作为字符串写入文件更简单的呢。。。。
<List>
<Listevent someelementdata ="false">
 <someelement>
  <moreelement morelementdata = "1234"/>
</someelement>
</Listevent>
</List>
using (stringwriter stringwriter = new stringwriter (new stringbuilder()))
{
  xmlserializer xmlserializer = new xmlserializer(typeof(DataRow));
  xmlserializer.serialize(stringwriter, list);
  var string = stringwriter.string();
}
List<DataRow> list =  getxml_table.AsEnumberable().ToList();
using (var writer = new StreamWriter(@"c:\temp\1.txt"))
{
    foreach(var row in list)
    {
        writer.WriteLine(row["column_name"]);
    }
}