まず、ASP.NETとC#を初めて使用することから始めましょう。コードビハインドページに送信したいデータを含む単純なWebフォームがあります。アイデアは、データをキャプチャし、それをJSONオブジェクトとして分離コードメソッドに送信することです。これはJavaScript/AJAXを介して行われることに注意してください(以下のコードを参照)。コードビハインドメソッドは、データを更新するための簡単なHTTP「PUT」リクエストを実行します。.apsxページはSecureフォルダーにあります(Secure Masterを使用します)。それがメソッド呼び出しに影響するかどうかわかりませんか?
以下は私がこれまでに持っているコードです。
JavaScript / AJAX:
var saveOptions =
{
url: "Profile.aspx/UpdateVendor",
type: "PUT",
dataType: 'json',
data: JSON.stringify({ vendor: ko.mapping.toJS(vendor) }),
contentType: "application/json",
success: function (response)
{
}
}
コードビハインド:
namespace PartyAtVendors.Secure
{
[WebService]
public partial class Profile : System.Web.UI.Page
{
[WebMethod]
public static bool UpdateVendor(PartyAtApi.Models.Vendors vendor)
{
return true;
}
}
}
アップデート:
問題は以下の通りです。codebehindメソッドは呼び出されません。コードを実行してテストし、Chromeの「要素の検査」を使用すると、次のエラーが発生します。
PUT http://localhost:50671/Secure/Profile.aspx/UpdateVendor 404 (Not Found)