Datatable.select不返回主数据表中的所有列

时间:2014-03-24 10:46:54

标签: c# linq datatable

我正在使用Datatable.select,以获取一些数据。我的代码如下:

for (int j=0; j<NStations.Count();j++)
{
    var result= DailyWeatherData.Select("StationName ='" + NStations[j]["StationName"] + "' and Monthh>='" + SP_Biofix.Month + "' and Monthh<='" + SP_DATE.Month + "'").CopyToDataTable();
    foreach (DataRow row in result.Rows)
    {
        WeatherData.ImportRow(row);
    }
}

然后我使用以下代码订购它:

WeatherData = WeatherData.AsEnumerable()
                         .OrderBy(r => r.Field<string>("StationName"))
                         .CopyToDataTable();

这给了我以下错误:

  

列&#34; stationName&#34;不属于数据表。

这是否意味着我需要使用datatable.where?我在其他地方错了吗?

1 个答案:

答案 0 :(得分:0)

我的问题是替换以下循环:

foreach (DataRow row in result.Rows)
   {
    WeatherData.ImportRow(row);
    }

使用以下代码:

 WeatherData.BeginLoadData(); 
                            WeatherData.Merge(result); 
                            WeatherData.EndLoadData();