我已经从下面的示例项目中将一个新的 SQL Server 数据库添加到 App_Data 文件夹中。 http://code.msdn.microsoft.com/How-to-consume-JSON-Web-5db0174b#content
我在 HTML 中添加了 2 个新文本框、1 个按钮供用户输入姓名、地址和单击按钮以保存在数据库中。
但我不知道如何将从 HTML 文本框中输入的值、使用 WinJS.xhr 的按钮传递给 WCF,然后从 SQL Server 数据库执行 CRUD,并将在应用程序中显示输出。
默认.html
<input id="txtName" type="text" />
<input id="txtAddress" type="text" />
<button id="insertbtn">insert</button>
JSONWCFService.svc.cs
public void Insert(int name, int address)
{
string connectionString = System.Configuration.ConfigurationManager.
ConnectionStrings["Database1ConnectionString1"].ConnectionString;
SqlConnection con = new SqlConnection(connectionString);
string sql = "INSERT INTO Table1(Name, Address) VALUES (@Name, @Address)";
SqlCommand cmd = new SqlCommand(sql, con);
cmd.Parameters.AddWithValue("@Name", name);
cmd.Parameters.AddWithValue("@Address", address);
try
{
con.Open();
int numAff = cmd.ExecuteNonQuery();
}
catch (SqlException exc)
{
}
finally
{
con.Close();
}
}
IAddService.cs
public interface IAddService{
[OperationContract]
[WebInvoke(RequestFormat = WebMessageFormat.Json, ResponseFormat = WebMessageFormat.Json, BodyStyle = WebMessageBodyStyle.Wrapped)]
void Insert(string name, string address);}
默认.js
function insertButtonClick() {
var baseURI2 = "http://localhost:45573/AddService.svc/Insert";
var name = document.getElementById('txtName').value;
var address = document.getElementById('txtAddress').value;
WinJS.xhr({
type: "POST",
url: baseURI2,
headers: { "Content-type": "application/json" },
data: JSON.stringify(txtName+ txtAddress)
}).then(function complete(request) {
var resdata = request.responseText;
}, function error(er) {
var err = er.statusText;
})
}
请帮助更正我的代码或分享一些正确的示例代码(WinJS.xhr 和 JSONWCFService)。
非常感谢!