私は、POSTの代わりにGETを通して呼び出されたときにMVCが私のカスタムモデルパラメータを埋め込むのに問題があるようです。ASP.NET MVC ModelBinderはGETリクエストやjQuery AJAXで動作しませんか?
私はそうのようなアクションを呼び出すJavaScriptのスニペットを持っている:それがない
$.getJSON('<%= Url.Action("DoSearch") %>' + location.search,
function(data) {
if (data.Result == "OK") {
location.href = location.href;
}
});
何、基本的にそれを呼び出しページと同じクエリ文字列を渡し、別のアクションを呼び出しています。結果が「OK」であれば、現在のページをリフレッシュします。
アクションは、次のように定義されています
public ActionResult DoSearch(SearchParameters searchParameters)
モデルは次のとおりです。
public class SearchParameters
{
public string Query;
...
}
呼び出すURLは(放火犯で確認)/DoSearch?Query=some+query
のようなものです。
、私のパラメータは、常に私がアクションを定義した場合など、空の
(nullではない、ちょうどすべてのパラメータがデフォルト値に初期化されている)アップします(これも成功しません/DoSearch?searchParameters.Query=some+query
を試してみました)
public ActionResult DoSearch(string Query, ...)
次に、パラメータが正しく入力されます。しかし、モデルではありません。
は、私が想定しています
a)のいずれかのオブジェクトモデルを投入すると、GET要求に対しては機能しません。
b)は、私はすべてのアイデア
何か間違ったことをやっていますか?ありがとう。
本当に正しいです。それは今働く。これについての詳細なドキュメントがあれば幸いです。どうもありがとう。 – andreialecu
ニースの答えトーマス。 +1 - おめでとうございます! –
文書の欠落を「条約」といいます。 :) –