2010-02-28 35 views

回答

0

您可以使用所涉及的各种类型的方法手动创建DataTables及其内容。

这确实需要一些代码,但是可能的(我已经从.NET 1.1中的自定义序列化完成,为需要DataSet的控件填充数据源)。

[一个更具体的答案真的需要知道为什么有兴趣在此。]

7

是的,可以。这里有一个简短的例子:

var results = new DataTable(); 
using(var connection = new SqlConnection(...)) 
using(var command = connection.CreateCommand()) 
{ 
    command.Text = "sql statement"; 
    var parameter = command.CreateParameter(); 
    parameter.Name = "name"; 
    parameter.Value = aValue; 
    command.Parameters.Add(parameter); 

    connection.Open(); 
    results.Load(command.ExecuteReader()); 
} 
return results; 

如果你只是需要创建一个数据表,例如用于存储数据库不提供的数据,那么您可以创建一个新的DataTable并自行填充它,如下所示:

var x = new DataTable("myTable"); 
x.Columns.Add("Field1", typeof(string)); 
x.Columns.Add("Field2", typeof(string)); 
x.Columns.Add("Field3", typeof(int)); 

x.Rows.Add("fred", "hugo", 1); 
x.Rows.Add("fred", "hugo", 2); 
x.Rows.Add("fred", "hugo", 3); 
相关问题