如何将DataRow转换为DataRowView?
例如:
DataTable dt=ds.Tables[0];
DataRow dr= dt.NewRow();
DataRowView drv = ????
如何将DataRow转换为DataRowView?
例如:
DataTable dt=ds.Tables[0];
DataRow dr= dt.NewRow();
DataRowView drv = ????
使用
DataTable dt=ds.Tables[0];
DataRow dr= dt.NewRow();
DataRowView drv= dt.DefaultView[dt.Rows.IndexOf(dr)];
DataRowView selecRow = dataTable.DefaultView.Cast<DataRowView>().FirstOrDefault(a => a.Row == desRow);
这个工作,没有“where”的话会稍微简短一些;-)
如果DataRow的状态是Detached,则上述方法无法使用。可以在这种情况下使用以下代码片段:
DataRow dRow = dataTable.NewRow();
//...
DataRowView dRowView = dRow.Table.DefaultView.AddNew();
for (int i = 0; i < dRow.ItemArray.Length; i++)
{
dRowView.Row[i] = dRow[i];
}
DataRowView selecRow = dataTable.DefaultView.Cast<DataRowView>().Where(a => a.Row == desRow).FirstOrDefault();