0
<button class="btn btn-primary" data-bind="click:function(){show('add');}">Add</button>
我的目的是使用自動Id號將我的輸入記錄值添加到後端。但是當我點擊按鈕添加後,顯示內部服務器錯誤。記錄有時被保存到數據庫中。但Id是0.我已經設置Id屬性是Nullable。以下是我的添加功能和對象。我可以從你們聰明人那裏得到一些想法嗎?非常感謝你。如何使用ASP.NET MVC和KnockoutJS很好地添加記錄?
self.addCustomer = function() {
debugger;
var cus = { Name : self.cusName(), Address: self.cusAddress()}
var url = "/Customer/AddCustomer";
$.ajax({
type: "POST",
url: url,
data: cus,
success: function (data) {
alert("Insert Successful!");
GetCustomers();
$('#AddCustomer').modal('hide');
},
error: function (error) {
alert(error.statusText);
}
});
};
self.customers = ko.observableArray([]);
GetCustomers();
function GetCustomers() {
$.ajax({
type: "GET",
url: "/Customer/GetCustomer",
contentType: "application/json;charset=utf-8",
dataType: "json",
success: function (data) {
self.customers(data);
},
error: function (error) {
alert(error.statusText);
}
});
}
self.getSelected = function (cus) {
self.cusId(cus.Id),
self.cusName(cus.Name),
self.cusAddress(cus.Address)
};
後端發佈操作。
[HttpPost]
public ActionResult AddCustomer(CustomerModel customer)
{
var cus = new Customer
{
//Id = customer.Id,
Name = customer.Name,
Address = customer.Address
};
customerContext.Customers.Add(cus);
customerContext.SaveChanges();
return null;
}
謝謝,夥計。我將Id屬性更改爲可爲空的int。但是現在添加和編輯點擊事件都會顯示「內部服務器錯誤」對話框。我將Application_EndRequest方法放在Global.aspx.cs中,但仍然不起作用。 :( – Auck
否則,它會工作一段時間,名稱和地址數據保存到數據庫中,但Id仍然是0.內部服務器錯誤是下一個錯誤 – Auck
我已經修復了所有錯誤並且運行良好。:) – Auck