'不能使用merge隐式地将类型'void'转换为'System.Data.DataTable'

时间:2012-07-05 11:20:45

标签: c# merge datatable

每次我使用Merge()时,我都有以下内容:'不能将类型'void'隐式转换为'System.Data.DataTable'。

请告诉我我的代码中有什么问题?

DataRow[] befdvd = toverify.Select("Date < '# " + dvddate + "#'");
DataRow[] aftdvd = toverify.Select("Date => '# " + dvddate + "#'");
foreach (DataRow dr in befdvd ) 
 dr[gl.EX_PRICE] = (double)dr[gl.EX_PRICE] * dvdfact;
 DataTable beff = befdvd.CopyToDataTable();
 DataTable Aftt = aftdvd.CopyToDataTable();
 toverify = beff.Merge(Aftt);

由于

2 个答案:

答案 0 :(得分:8)

阅读错误消息。

Merge()返回void 您无法将其分配给DataTable变量。

Merge()将第二个表合并到第一个表中;它不会创建新表。

答案 1 :(得分:4)

根据MSDN DataTable.Merge()返回void:

public void Merge(
    DataTable table
)

所以你不能做那种任务。试试这个:

beff.Merge(Aftt);
toverify = beff;