2014-10-10 59 views
0

我目前正在學習使用Visual Studio Express 2013 for Web編寫ASP.NET網站,並計劃開發一個在線購物網站。我已經開始了一個新的網站,增加了一個SQL Server數據庫(eCommerce.mdf)進入網站(VS),創建了兩個表,使用下面的查詢插入一行數據:在ASP.NET(VB)中編輯SQL Server數據庫(INSERT,UPDATE等)

CREATE TABLE product (product_id char(4) PRIMARY KEY, product_name varchar(50), product_price money, product_stock int); 
INSERT INTO product VALUES ('P001', 'Omega Seamaster Planet Ocean 600m', 68000, 7); 
CREATE TABLE cart (customer_id char(4), product_id char(4), cart_quantity int); 

於是我加了新的網絡表單Product.aspx進入網站和GridView從我的數據庫中獲取product表(它顯示源中的SelectCommand="SELECT * FROM [product]")的數據。它工作正常,但我想做一個Button,即添加到購物車,可以執行INSERT INTO函數向cart表中添加新行。我嘗試使用以下代碼:

Button HTML代碼

<asp:Button ID="Button1" runat="server" Text="Add to cart" OnClick="func1" /> 

添加OnClick事件<html xmlns="http://www.w3.org/1999/xhtml">

<%@ Import Namespace="System.Data.SqlClient" %> 
<script runat="server"> 
Sub func1() 
    Dim cn As New SqlConnection("I dont know what I should type here!") 
    cn.Open() 
    Dim cmd = New SqlCommand("INSERT INTO cart VALUES ('C001', 'P001', 1);") 
    cmd.ExecuteNonQuery() 
    cn.Close() 
End Sub 
</script> 

我之前沒有添加func1事件的腳本關於ConnectionString參數肯定會傳遞給SqlConnection(),因爲我哈我嘗試了很多來自互聯網的例子,但沒有一個適合我。

connectionStringsWebconfig文件下,比ConnectionStringDefaultConnection名稱之外,它寫入connectionString="Data Source=(LocalDB)\v11.0;AttachDbFilename=|DataDirectory|\eCommerce.mdf;Integrated Security=True"

此外,我得到的消息An exception of type 'System.Data.SqlClient.SqlException' occurred in System.Data.dll but was not handled in user code當我點擊Button調試模式,如果我用OnClick事件,而不是OnClientClick事件。

所以我的問題是,我應該輸入什麼作爲ConnectionString參數和其他任何我應該修改得到func1按預期工作?我也很欣賞任何其他方法。

謝謝。

回答

2

你可以嘗試這樣。

Dim connectionString As String = ConfigurationManager.ConnectionStrings("DefaultConnection").ConnectionString 
Dim cn As New SqlConnection(connectionString) 
cn.Open() 
Dim cmd = New SqlCommand("INSERT INTO cart VALUES ('C001', 'P001', 1);", cn) 
cmd.ExecuteNonQuery() 
cn.Close() 
+0

感謝您的回覆,它終於有效(但我使用'ConnectionString'名稱(它實際上是'eCommerce'),而不是'DefaultConnection')。非常感謝 :) – blackr1234 2014-10-10 09:35:21