C#DataRow未添加到DataTable

时间:2016-09-21 19:23:50

标签: c# datatable datarow

我创建了一个DataTable,当我尝试添加一行时,它不需要。我知道DataRow中有信息,但在foreach循环结束后,我查看DataTable的计数,它显示0.这是我正在使用的代码:

<div id="divid">
    <img style="width:100px; height:200px;" src="site.com">
    <p>text</p>
    <img style="width:230px; height:120px;" src="site.com">
    <h3>text</h3>
    <img style="width:50px; height:20px;" src="site.com">
    <img style="width:70px; height:40px;" src="site.com">
</div>

感谢任何帮助。谢谢!

2 个答案:

答案 0 :(得分:1)

我使用以下示例xml运行您的代码(代替Web服务调用):

string strXML =
@"
    <xml>
        <Catalog>
            <item>
                <Package>
                    <Id>1</Id>
                    <Name>a</Name>
                </Package>
                <Package>
                    <Id>2</Id>
                    <Name>b</Name>
                </Package>
            </item>
            <item>
                <Package>
                    <Id>3</Id>
                    <Name>c</Name>
                </Package>
                <Package>
                    <Id>4</Id>
                    <Name>d</Name>
                </Package>        
            </item>
        </Catalog>
    </xml>                
    ";

我将以下代码添加到末尾以进行调试:

Console.WriteLine(CustomColumnsDS.Tables[0].Rows.Count);

输出为4这是正确的。同时查看调试器中的DataTable行显示数据存在。

答案 1 :(得分:0)

你应该尝试不分配列类型,因为我们不知道xml元素的类型,只需尝试: dt.Columns.Add( “testId”); dt.Columns.Add( “测试名”); 直到尝试cacth ...您确定每个数据流的数据都正确吗? (运行debug直到此行查看值: dr [“testName”] = xn [“Name”]。InnerText;