我有一个数据集,我想用NULL替换每个'01 / 01/1754 00:00:00'的单元格。
类似于FOR LOOP外观会循环遍历数据集中的每一行并检查值是否为'01 / 01/1754 00:00:00'然后将该值替换为'NULL'
由于
答案 0 :(得分:0)
只需扫描dataSet中的每个单元格即可
for (int i = 0; i < sampleDataSet.Tables[0].Rows.Count; i++)
{
for (int j = 0; j < sampleDataSet.Tables[0].Columns.Count; j++)
{
if (sampleDataSet.Tables[0].Rows[i][j].ToString() == "01/01/1754 00:00:00")
{
sampleDataSet.Tables[0].Rows[i][j] = "NULL";
}
}
}
如果目标数据仅存在于数据集的单个列中,则可以省略第二个for循环。
答案 1 :(得分:0)
请尝试此代码。我可以更新。
var dt = DataSet.Table[0] // as per your requirement;
dt.Select(string.Format("[columnname] = '{0}' ", "datevalue")).ToList<DataRow>()
.ForEach(r => r["columnname"] = DBNull.Value);
答案 2 :(得分:0)
您在此处提到DataSet
,但我怀疑您是DataTable
,请尝试以下代码:
foreach(DataTable dt in ds.Tables){
foreach(DataRow row in dt.Rows){
for(int i = 0; i < dt.Columns.Count; i++){
if(object.Equals(row[i],"01/01/1754 00:00:00")) row[i] = null;
}
}
}