...このようになります。 @Html.Action()
は、アクションメソッドを必要とし、アクションメソッドを使用して部分ページをレンダリングします。 @Html.Partial()
は、ページをレンダリングするオブジェクト値に基づいて、必要なアクションメソッドではありません。したがって、@Html.Partial()
は、@Html.Action()
と比較してパフォーマンスが向上します。
using Newtonsoft.Json;
@{
string JsonStr = {\"user\":\"me\",\"payment_method\":\"card\",\"items_bought\":[{\"id\":\"001\",\"name\":\"desk\",\"delivered\":\"true\"},{\"id\":\"455\",\"name\":\"chair\","delivered\":\"false\"},{\"id\":\"234\",\"name\":\"mousepad\",\"delivered\":"false\"},{\"id\":\"135\",\"name\":\"cabinet\",\"delivered\":\"false\"}]}
var JsonObject = JsonConvert.DeserializeObject<MyJSON>(JsonStr);
}
<div>
@Html.Partial("_IdentifierPartial", JsonObject)
</div>
上記のコードは正常に動作し、要件を満たします。しかし、このアプローチはお勧めできません、より良いあなたはコントローラ側のモデルオブジェクトにjsonの文字列を変換し、表示するモデルオブジェクトを渡すことができます。例については
:アプローチ上記
@model ModelClass
<div>
@Html.Partial("_IdentifierPartial",Model.PartialModel)
</div>
は、はるかに高速ブラウザでページをレンダリングしています。
これまでに何を試みましたか?あなたは* [Deserialize JSON with C#](https://stackoverflow.com/q/7895105/3744182)*を読み、テストしましたか? – dbc
@dbc 'JavaScriptSerializer'は推奨されていませんが、私はそれを使用する答えを推奨しません。 –
@CamiloTerevinto - 「JSONをC#でどのように非直列化するのですか?または、[JSONオブジェクトをカスタムC#オブジェクトに変換する方法](https://stackoverflow.com/q/2246694/3744182)*と* [JSONデータをJSON.NETを使用してC#にデシリアライズする](https ://stackoverflow.com/q/2546138)*代わりに? – dbc