如果你用過Asp.net webform, 說明你也算是.NET 開發的老兵了。WEBform應該是2011 2013左右,當時還用visual studio 2005、 visual studio 2008。後來基本都用的是MVC。 如果是新開發的項目,估計沒人會用webform技術。但是有些舊版 ...
如果你用過Asp.net webform, 說明你也算是.NET 開發的老兵了。WEBform應該是2011-2013左右,當時還用visual studio 2005、 visual studio 2008。後來基本都用的是MVC。
如果是新開發的項目,估計沒人會用webform技術。但是有些舊版本的項目,還需要維護,所以,我又不得不重新用上webform技術。
webform的程式中,大部分都是伺服器控制項。現在用起來,十分不習慣,新增幾個curd的模塊,都要浪費好多時間。所以,不得不尋求更高效的辦法。
決定用戶前端ajax調用後臺方法進行curd的方法。但是此前,我只知道MVC的請求路由,對於webform從來沒用過。所以我翻看了一下百度,和官方文檔:
ASP.NET AJAX 提供了另一種機制以 Web 服務類似於調用而無需創建獨立.asmx 文件。 這是通過使用一種技術稱為"頁面方法"。 頁面方法是直接在頁面或代碼旁置文件中嵌入具有 WebMethod 特性應用於它們的靜態 (共用在 VB.NET) 方法。 通過將 WebMethod 特性應用它們可以調用使用名為 PageMethods 獲取在運行時動態創建的特殊 JavaScript 對象。
後端代碼:
[WebMethod]
public static Customer[] GetCustomersByCountry(string country)
{
return Biz.BAL.GetCustomersByCountry(country);
}
前端代碼:
$.ajax({
url: 'List.aspx/GetCustomersByCountry',
type: 'post',
contentType: "application/json; charset=utf-8",
data: "{ id: '" + id + "'}",
dataType: 'json',
success: function (data) {
console.log(data.d);
},
error: function (error) {
console.log(error);
}
});