簡體   English   中英

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

[英]Updating records in SQL Server 2005 with ASP.NET 3.5 - HOW TO?

我總是使用SQLDataSource來更新我的SQL Server 2005數據庫中的記錄,因此我不太確定如何在常規代碼中完成此操作。 我正在使用VB.NET,但是如果您是C#開發人員,並且想向我展示一些非常受歡迎的代碼。

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

我的用戶將看到一個包含5個文本框的頁面,其中包含其聯系方式。我將從SQL Server DB中獲得這些詳細信息,然后他們在文本框中更改文本並單擊“提交”,然后必須保存所做的更改。

使用SQLDataSource非常簡單,但是我如何自己編寫代碼?

提前致謝!

在(原始)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();           
    }
}

ADO.NET上的一個不錯的教程- 使用ADO.NET在C#中訪問SQL Server數據

當然,使用ASP.NET 3.5,您還可以選擇LINQ to SQL或Entity Framework。

然后還有NHibernate ,這是一種非常流行的開源對象關系映射器,對於基本的CRUD應用程序非常有用。

AI AI AI .........我很愚蠢。

我之所以在PAGE LOAD事件上放置IF NOT ISPOSTBACK語句,是因為單擊“提交”按鈕時,我從數據庫重新加載了記錄,並且用舊記錄更新了記錄!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM