.aspx
JavaScriptを吐き出すファイルによって現在生成されているJSONのようなデータ構造(変更したくない)があります。.NETが昼食にjQueryを食べた後、嘔吐したようです...
JsonResult
基本的に匿名オブジェクトを作成してに渡すことで、を返すMVCコントローラーアクションにすべてを書き直したいと思いますreturn Json(data)
。
ただし、作成するJSONオブジェクトのプロパティの一部が実際にはJavaScript関数である場合、C#オブジェクトを作成する方法がわかりません。それ、どうやったら出来るの?
例:
次のJSONのようなオブジェクトを作成したいと思います。
{
id: 55,
name: 'john smith',
age: 32,
dostuff: aPredefinedFunctionHandle,
isOlderThan: function(other) { return age > other.age }
}
他の場所(通常はファイル内)で定義したJavaScript関数に両方の関数ハンドルを指定できるようにしたいことと.js
、新しいインライン関数を定義したいことがわかります。
私はC#でそのオブジェクトの一部を構築する方法を知っています:
var data = new { id = 55, name = "john smith", age = 32 };
return Json(data);
残りの部分も行うための良い方法はありますか?