【问题标题】:Wrapping multiple TextBoxes into a DataTable将多个文本框包装到一个数据表中
【发布时间】:2011-07-20 18:04:08
【问题描述】:

我有一个网页,在我的数据访问层中,我正在将文本框更新到我的页面。这是一个简单的 3 层应用程序。

我的 DataAccess 类中有这样的东西:

 public void SaveDataSet(DataTable table)
        {

           //What to do here???

        }

我应该如何将我所有的文本框值作为 DataTable 参数传递给这个函数?

【问题讨论】:

    标签: c# asp.net web-applications webforms


    【解决方案1】:

    我建议你使用 Microsoft Entity Framework,你可以获取一些视频教程here 它非常易于使用且速度非常快,而且它不会让你过多了解它是如何工作的,它也是 @987654322 @真的很好;)

    【讨论】:

      【解决方案2】:

      或者如果你想去数据表的方式你需要这样的东西

      首先我们创建数据表

      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);
      }
      

      现在你可以像这样创建一个方法来将数据表插入到 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);
                      }
                    }
                }
      

      【讨论】:

      • 哦!我的....我刚刚阅读了实体模型框架,我知道这正在发生。谢谢(你的)信息。我正在尽可能快地学习......
      • 别提了 :) 我真的很满意 EF 的真棒
      • 另外我建议你进入 ASP MVC 3,它与实体框架融合得很好
      • 是的,我开始使用实体框架学习 MVC3。挺好的。
      猜你喜欢
      • 2016-04-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-03-20
      • 2021-10-18
      • 1970-01-01
      相关资源
      最近更新 更多