我目前正在學習使用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()
,因爲我哈我嘗試了很多來自互聯網的例子,但沒有一個適合我。
從connectionStrings
的Webconfig
文件下,比ConnectionString
與DefaultConnection
名稱之外,它寫入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
按預期工作?我也很欣賞任何其他方法。
謝謝。
感謝您的回覆,它終於有效(但我使用'ConnectionString'名稱(它實際上是'eCommerce'),而不是'DefaultConnection')。非常感謝 :) – blackr1234 2014-10-10 09:35:21