此為上課的筆記,用來往後複習時使用
前端為jquery,後端為web service,將檔案存到Database
先建立一個Database,並建立Table(Members)
CREATE TABLE [dbo].[Members] (
[Id] INT IDENTITY (1, 1) NOT NULL,
[name] NVARCHAR (50) NOT NULL,
[password] NVARCHAR (50) NOT NULL,
[email] NVARCHAR (50) NOT NULL,
[tel] NVARCHAR (50) NOT NULL,
PRIMARY KEY CLUSTERED ([Id] ASC)
);
設定Web.config
<connectionStrings>
<add name="DatabaseConnectionString1" connectionString="Data Source=(LocalDB)\v11.0;AttachDbFilename=|DataDirectory|\Database.mdf;
Integrated Security=True" providerName="System.Data.SqlClient" />
</connectionStrings>
建立一個web service(.asmx),並建立一組Method(InsertMember)
<%@ WebService Language="C#" Class="WebService" %>
using System;
using System.Web;
using System.Web.Services;
using System.Web.Services.Protocols;
using System.Data;
using System.Data.SqlClient;
using System.Web.Configuration;
[WebService(Namespace = "http://tempuri.org/")]
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
// To allow this Web Service to be called from script, using ASP.NET AJAX, uncomment the following line.
// [System.Web.Script.Services.ScriptService]
public class WebService : System.Web.Services.WebService {
[WebMethod]
public void InsertMember(string Name, string Password, string Email, string Tel)
{
SqlConnection cn = new SqlConnection(
WebConfigurationManager.ConnectionStrings["DatabaseConnectionString1"].ConnectionString);
SqlCommand cmd = new SqlCommand(
"insert into Members values(@Name,@Password,@Email,@Tel)", cn);
cmd.Parameters.AddWithValue("@Name", Name);
cmd.Parameters.AddWithValue("@Password", Password);
cmd.Parameters.AddWithValue("@Email", Email);
cmd.Parameters.AddWithValue("@Tel", Tel);
cn.Open();
cmd.ExecuteNonQuery();
cn.Close();
}
}
確認web service是否建立成功

輸入數值

至Database確認是否有資料

Register.aspx的程式碼區段,呼叫Method(InsertMember)及接收輸入的字串
<script src="Scripts/jquery-2.2.3.min.js"></script>
<script>
$(function () {
$("#Button1").click(showHandler);
});
function showHandler() {
$.ajax({
type: "POST",
url: "WebService.asmx/InsertMember",
data: { Name: $("#TextBox1").val(), Password: $("#TextBox2").val(), Email: $("#TextBox3").val(), Tel: $("#TextBox4").val() },
success: function () {
alert("存檔成功");
}
});
}
</script>
Register.aspx的body部分
<div>
<h1>會員管理</h1>
<h2>註冊</h2>
<br />
帳號:<asp:TextBox ID="TextBox1" runat="server" AutoPostBack="True"></asp:TextBox>
<br />
<br />
密碼:<asp:TextBox ID="TextBox2" runat="server" AutoPostBack="True"></asp:TextBox>
<br />
<br />
Email:<asp:TextBox ID="TextBox3" runat="server" AutoPostBack="True"></asp:TextBox>
<br />
<br />
電話:<asp:TextBox ID="TextBox4" runat="server"></asp:TextBox>
<br />
<br />
<asp:Button ID="Button1" runat="server" Text="Save" OnClientClick="myfunction(); return false;" />
</div>