C# 将多个文本框包装到数据表中
我有一个网页,在我的数据访问层中,我正在将文本框更新到我的页面。这是一个简单的三层应用程序 我的DataAccess类中有这样的内容:C# 将多个文本框包装到数据表中,c#,asp.net,web-applications,webforms,C#,Asp.net,Web Applications,Webforms,我有一个网页,在我的数据访问层中,我正在将文本框更新到我的页面。这是一个简单的三层应用程序 我的DataAccess类中有这样的内容: public void SaveDataSet(DataTable table) { //What to do here??? } 我应该如何将所有文本框值作为DataTable参数传递给此函数?我建议您使用Microsoft Entity Framework,您可以获取一些视频教程。这些教程使用起来
public void SaveDataSet(DataTable table)
{
//What to do here???
}
我应该如何将所有文本框值作为DataTable参数传递给此函数?我建议您使用Microsoft Entity Framework,您可以获取一些视频教程。这些教程使用起来非常简单,速度非常快,您不必过多地了解它的工作原理,而且非常好;) 或者,如果您想使用数据表,您需要这样的东西 首先,我们创建datatable
private DataTable CreateDataTable()
{
DataTable myDataTable = new DataTable();
DataColumn myDataColumn;
myDataColumn = new DataColumn();
myDataColumn.DataType = Type.GetType("System.String");
myDataColumn.ColumnName = "id";
myDataTable.Columns.Add(myDataColumn);
myDataColumn = new DataColumn();
myDataColumn.DataType = Type.GetType("System.String");
myDataColumn.ColumnName = "username";
myDataTable.Columns.Add(myDataColumn);
myDataColumn = new DataColumn();
myDataColumn.DataType = Type.GetType("System.String");
myDataColumn.ColumnName = "firstname";
myDataTable.Columns.Add(myDataColumn);
myDataColumn = new DataColumn();
myDataColumn.DataType = Type.GetType("System.String");
myDataColumn.ColumnName = "lastname";
myDataTable.Columns.Add(myDataColumn);
return myDataTable;
}
private void AddDataToTable(string username,string firstname,string lastname,DataTable myTable)
{
DataRow row;
row = myTable.NewRow();
row["id"] = Guid.NewGuid().ToString();
row["username"] = username;
row["firstname"] = firstname;
row["lastname"] = lastname;
myTable.Rows.Add(row);
}
然后,您需要一种方法将数据插入到datatable中
private DataTable CreateDataTable()
{
DataTable myDataTable = new DataTable();
DataColumn myDataColumn;
myDataColumn = new DataColumn();
myDataColumn.DataType = Type.GetType("System.String");
myDataColumn.ColumnName = "id";
myDataTable.Columns.Add(myDataColumn);
myDataColumn = new DataColumn();
myDataColumn.DataType = Type.GetType("System.String");
myDataColumn.ColumnName = "username";
myDataTable.Columns.Add(myDataColumn);
myDataColumn = new DataColumn();
myDataColumn.DataType = Type.GetType("System.String");
myDataColumn.ColumnName = "firstname";
myDataTable.Columns.Add(myDataColumn);
myDataColumn = new DataColumn();
myDataColumn.DataType = Type.GetType("System.String");
myDataColumn.ColumnName = "lastname";
myDataTable.Columns.Add(myDataColumn);
return myDataTable;
}
private void AddDataToTable(string username,string firstname,string lastname,DataTable myTable)
{
DataRow row;
row = myTable.NewRow();
row["id"] = Guid.NewGuid().ToString();
row["username"] = username;
row["firstname"] = firstname;
row["lastname"] = lastname;
myTable.Rows.Add(row);
}
现在您可以创建一个方法,将datatable插入sql server,如下所示
private void insertDataTable(DataTable MyDataTable)
{
string ConnectionString = "your connection string";
using (SqlBulkCopy bulkcopy = new SqlBulkCopy(ConnectionString)
{
bulkcopy.DestinationTableName = “dbo.<your table>”;
try
{
bulkcopy.WriteToServer(MyDataTable);
}
catch (Exception ex)
{
Console.WriteLine(ex.Message);
}
}
}
private void insertDataTable(DataTable MyDataTable)
{
string ConnectionString=“您的连接字符串”;
使用(SqlBulkCopy bulkcopy=newsqlbulkcopy(ConnectionString)
{
bulkcopy.DestinationTableName=“dbo。”;
尝试
{
bulkcopy.WriteToServer(MyDataTable);
}
捕获(例外情况除外)
{
控制台写入线(例如消息);
}
}
}
哦!天哪……我刚刚读了实体模型框架,我知道这正在发生。谢谢你提供的信息。我正在尽可能快地学习……别提了:)我对EF的卓越表现非常满意。我还建议你加入ASP MVC 3,它与实体框架融合得非常好。是的,我开始使用实体框架学习MVC3。非常好。