私はgetJSONを使用しており、URLの一部として渡したいのは、ビューにあるモデルです(MVC C#を使用しています)
$.getJSON(url, function (data) {
});
これを行う方法があるかどうか疑問に思っています。
@model PVC.Domain.Lab.Models.ModelMain
私はgetJSONを使用しており、URLの一部として渡したいのは、ビューにあるモデルです(MVC C#を使用しています)
$.getJSON(url, function (data) {
});
これを行う方法があるかどうか疑問に思っています。
@model PVC.Domain.Lab.Models.ModelMain
JSON リクエストとして送信できます。
@model MyViewModel
...
<script type="text/javascript">
var model = @Html.Raw(Json.Encode(Model));
$.ajax({
url: '@Url.Action("someaction")',
type: 'POST',
contentType: 'application/json',
data: JSON.stringify(model),
success: function(result) {
alert('success');
}
});
</script>
Visual Studio の構文の強調表示では、var model = @Html.Raw(Json.Encode(Model));
行に赤い波線が引かれ、エラーがあることが示される場合があることに注意してください。このエラーを完全に無視して、動作するアプリケーションを実行してください。
また、ネットワークの使用を制限したい場合は、AJAX リクエストでモデルの ID のみを送信し、最初に取得した場所から ID を使用してサーバーにこのモデルを取得させる方がよいことに注意してください。
これを行う方法は、インライン JavaScript を使用して、URL で使用するモデルの部分を抽出することです。
<script>
var myUrl = '/path/to/action/@Model.Id/whatever else';
// Then make your call using the constructed URL
</script>
この場合、.json
ファイルを使用する必要があります...
$.getJSON("yourpage.json", function (data) {
});