DataColumn设置默认值

7
我想给DataColumn设置默认值。如何在以下代码中为DataColumn(column3)设置默认值?
DataTable dt = new DataTable();
dt.Columns.AddRange(new DataColumn[] { 
                                        new DataColumn("Column1", typeof(String)),
                                        new DataColumn("Column2", typeof(String)), 
                                        new DataColumn("Column3", typeof(String)),
                                     });

string csvData = File.ReadAllText(csvPath);

foreach (string row in csvData.Split('\n'))
{
    if (!string.IsNullOrEmpty(row))
    {
        dt.Rows.Add();
        int i = 0;
        foreach (string cell in row.Split(','))
        {
            dt.Rows[dt.Rows.Count - 1][i] = cell;
            i++;
        }
    }
}
4个回答

14

Columns有一个"DefaultValue"属性,因此您可以这样做:

dt.Columns["Column1"].DefaultValue = "testing";
dt.Columns["Column2"].DefaultValue = "blah";
dt.Columns["Column3"].DefaultValue = "";

Then, when you do

DataRow dr = dt.NewRow();

dr的1、2和3列将分别具有默认值


5

0

你也可以使用Columns.Add的返回值来完成它。

var col = result.Columns.Add("Column1", typeof(CellObject));
col.DefaultValue = new CellObject { Value = null };

-1

这个默认值可以在向 DataTable 插入新的 DataRow 时使用。

dt.Columns["Col"].DefaultValue="Name";

要为所有行添加默认值,我们必须在Datatable内部使用for each循环。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接