2013-05-12 56 views
0

我有一個gridview的網頁,顯示Azure雲數據庫中某個表中的所有行。該表稱爲「學生」,它包含id(主鍵),名稱和gpa。在C#(azure數據庫)中的gridview中添加一行

我也有2個文本框,一個用於名稱和一個用於gpa。用戶應該爲這些框輸入一些值,然後單擊「添加」按鈕將新記錄添加到表中。

問題是我無法讓它工作。

下面是我在功能ButtonAdd_click:

string InsertCommand = @"INSERT INTO [Students] ([Student_Id], [Student_Name], 
         [GPA]) VALUES (@Student_Id, @Student_Name, @GPA)"; 
string connString = "<%$ ConnectionStrings:SQLAzureConnection %>"; 
using (SqlConnection conn = new SqlConnection(connString)) 
{ 
    using (SqlCommand comm = new SqlCommand()) 
    { 
     comm.Connection = conn; 
     comm.CommandText = InsertCommand; 
     comm.Parameters.AddWithValue("@Student_Name", TextBox1.Text); 
     comm.Parameters.AddWithValue("@GPA", TextBox2.Text); 

     try 
     { 
      conn.Open(); 
      comm.ExecuteNonQuery(); 
     } 

**編輯:對不起連接字符串是不正確的! 我現在得到的是,頁面再次加載,但gridview保持不變

這是什麼意思?我怎麼能這樣做?

+0

請張貼你的內容Page_Load我的猜測是你沒有處理Page.IsPostBack事件,只是重新加載。 – JamesKn 2013-05-12 10:20:34

+0

@JamesKn是的,你是對的。因爲我的page_load目前是空的。應該在那裏? – DanielY 2013-05-12 10:51:15

回答

1

在看看你的代碼:

要將兩個參數,但是你的SQL看起來像它需要三個..

你缺少@Student_Id的值作爲參數輸入。

我的猜測也是,你的嘗試抓住是空的,所以你永遠不會看到錯誤。

James