使用ASP.NET 3.5更新SQL Server 2005中的记录 - 如何?

Eti*_*nne 0 c# vb.net sql-server asp.net

我总是使用SQLDataSource更新我的SQL Server 2005数据库中的记录,所以我不确定如何在普通代码中完成.我正在使用VB.NET,但如果你是一个C#开发人员,并希望向我展示一些非常受欢迎的代码.

我正在使用ASP.NET 3.5 ...............

我的用户将看到一个包含5个文本框的页面,其中包含其联系人详细信息.我将从SQL Server数据库中获取这些详细信息,当他们转到并更改文本框中的文本并单击"提交"时,必须保存更改.

使用SQLDataSource非常容易,但我如何自己编写代码呢?

提前致谢!

Rus*_*Cam 7

像(香草)ADO.NET中的以下内容

using(var con = new SqlConnection("ConnectionString"))
{
    using (var cmd = con.CreateCommand())
    {
        // This Example uses a parameterized SQL statement
        // but you can also use SQL Server stored procedures

        cmd.CommandText = "UPDATE table SET field1 = @field1, field2 = @field2 WHERE id = @id"; // etc, etc    
        cmd.CommandType = CommandType.Text;

        // Add values for the parameter values for the 
        // parameter placeholders in the SQL statement
        cmd.Parameters.AddWithValue("field1", Textbox1.Text);
        cmd.Parameters.AddWithValue("field2", Textbox2.Text);  
        cmd.Parameters.AddWithValue("id", myObject.Id);                

        con.Open();

        // You might want to use ExecuteScalar instead and get a return value back
        // from the database to signal success
        cmd.ExecuteNonQuery();           
    }
}
Run Code Online (Sandbox Code Playgroud)

关于ADO.NET的一个很好的教程 - 使用ADO.NET在C#中访问SQL Server数据

当然,使用ASP.NET 3.5,您还可以选择LINQ to SQL或Entity Framework.

然后还有NHibernate,一个非常流行的开源Object Relational映射器,非常适合基本的CRUD应用程序.

  • 你试图远离ADO.NET为什么呢?不知怎的,我感觉你正在使用ADO.NET而没有意识到它.在任何情况下,提交按钮的代码的结构与上面的代码完全相同.看起来您需要一些关于数据访问的补救方法,我认为您最好能够获得一本关于ADO.NET的书.个别问题可能不是学习此问题的最佳方式. (2认同)