こんにちは。
これはMVCに関してはかなり基本的な質問であることは知っていますが、@Html.RenderPartialでエラーが発生しないようにすることはできません。VB.NET と Razor を使用しています。私がオンラインで見つけたほとんどの例は c# で書かれており、変換するのは難しくありませんが、この単純なものには困惑しました。これは私の Index ビューにあり、_Layout.vbhtml によってレンダリングされています。
@Section MixPage
@Html.RenderPartial("_MixScreen", ViewData.Model)
End Section
上記の式は値を生成しません。
今朝かなり探しましたが、例を挙げているページは次のとおりです。
最終的に、私がやろうとしているのは、モデルをコントローラーから部分ビューに戻し、更新することです。
Function UpdateFormulation(model As FormulationModel) As ActionResult
model.GetCalculation()
Return PartialView("_MixScreen", model)
End Function
そしてそのコントローラはJavaScriptの式から呼び出されています:
function UpdateResults() {
jQuery.support.cors = true;
var theUrl = '/Home/UpdateFormulation/';
var formulation = getFormulation();
$.ajax({
type: "POST",
url: theUrl,
contentType: "application/json",
dataType: "json",
data: JSON.stringify(formulation),
success: function (result, textStatus) {
result = jQuery.parseJSON(result.d);
if (result.ErrorMessage == null) {
FillMixScreen(result);
} else {
alert(result.ErrorMessage);
}
},
error: function (xhr, result) {
alert("readyState: " + xhr.readyState + "\nstatus: " + xhr.status);
alert("responseText: " + xhr.responseText);
}
});
}
この更新されたモデルをビューに戻し、この部分的なビューのみを更新するより良い方法があれば、私はすべて耳にします。しかし、この質問の前提は、RenderPartial が値を生成しないのはなぜですか?