MVCプロジェクトにあるモデルにAJAX呼び出しを行おうとしています。次のエラーが発生し続けます。
POST foobar / GetDate 405(メソッドは許可されていません)
(ここで、「foobar」はMVCプロジェクトのlocalhost:port形式です。)
スクリプトへのルートがどのようになるかわからないため、プロジェクトでルーティングを試したことはありません。この時点で、ビューを適切にルーティングする方法を知っています。コードスニペットは次のとおりです。
私のMVCプロジェクトには、次の方法のモデルがあります。
[WebMethod]
public static string GetDate()
{
return DateTime.Now.ToString();
}
Index.aspxファイルには、次のコードがあります。
<button class="getDate">Get Date!</button>
<div class="dateContainer">Empty</div>
そして、script.jsファイルには、次のコードがあります。
$.ajax({
type: "POST",
url: "GetDate",
data: "{}",
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function (msg) {
// Replace text in dateContainer with string from GetDate method
$(".dateContainer").text(msg.d);
},
complete: function (jqHXR, textStatus) {
// Replace text in dateContainer with textStatus
if (textStatus != 'success') {
$(".dateContainer").text(textStatus);
}
},
});
私の最終目標は、XMLデータをC#モデルのメソッドに送信してから、XMLドキュメントを解析して保存することです。
今のところ、jQueryのAJAXリクエストを私が持っているC#メソッドにリンクしようと決心します。私はそれがルーティングと構文に関係していると確信しています。
前もって感謝します!