Sqlcommand是旧时尚的新一个是数据集



我为我的应用程序编写了这种类型的命令。但是我的讲师告诉我这些东西是旧时尚,使用像数据集这样的新东西。我想知道你们对吗?那种盗贼已经过时了?日期设置是执行此操作的新方法?

protected void btn_edit_Click(object sender, EventArgs e) 
{ 
    using(SqlConnection con = new SqlConnection(CONN_STR))
    {
      con.Open(); 
      using(SqlCommand cmd = new SqlCommand("UPDATE tbl_BinCardManager SET ItemName = @ItemName WHERE ItemNo = @ItemNo"), con)
      {
        // TODO: fill in param values with real values
        cmd.Parameters.AddWithValue("@ItemName", "my item name");
        cmd.Parameters.AddWithValue("@ItemNo", 1);
        cmd.ExecuteNonQuery(); 
      }
    }
 }

您使用的类是 .NET 中几乎所有数据访问技术的具体细节。围绕它有抽象,如数据集,LINQ to SQL,实体框架等。但最终他们都使用SqlConnection和朋友。

事实上,在我提到的 3 种技术中,数据集是那些基本上被丢弃的技术,除了 .NET 2.0 时代的工具之外,几乎没有或根本没有支持。

DataSet 在内部使用 DataReader 来填充日期。此外,数据集在断开连接模式下工作,但您的代码无论如何都不会过时。

您的老师可能正在谈论使用ORM。

不,你的代码一点也不老式。它完全适合您的要求。

在真正需要的时候使用DATASET......比如,当你想离线使用一些数据时,修改它并再次反映对数据库的更改。

事实上SqlCommand命令不是DATASET的替代品..

DATASET是可以保存从数据库检索或本地创建的表的东西。

SqlCommand可以帮助您从/向数据库表获取/插入/更新数据

即使您正在使用DATASET您仍然需要SqlCommand.那么不存在Sqlcommand是老式的,Dataset是新的问题

最新更新