サーバーでは、データを JSON としてシリアル化する必要があり、非表示の入力フィールドなどを使用して HTML として応答に書き込むことができます。
たとえば、NewtonSoft JSON ライブラリを使用して JSON をシリアル化できます (これはASP MVC 4に組み込まれていますが、Nuget を使用して簡単にインストールできます)。
string json = Newtonsoft.Json.JsonConvert.SerializeObject(images);
次に、json を HTML にレンダリングします (これを行う方法は多数あります)。
Response.Write(string.Concat("<input id='data' type='hidden' value='", json, "' />");
また
HiddenField jsonField = new HiddenField
{
ID = "data"
};
jsonField.Value = json;
this.Controls.Add(jsonField);
または、クライアントで解析する必要をスキップするスクリプトとして直接記述することもできます (スクリプトが複数回実行される原因となるポストバック/更新パネルの問題を回避するために、HTML メソッドを使用する傾向があります)。
Response.Write(string.Concat("<script type='text/javascript'> var images = ", json, ";</script>");
クライアントでは、この JSON を HTML から読み取って解析できます。最新のブラウザーではこれが組み込まれているか、JSON2 のようなものでポリフィルできます
例えば
var field = document.getElenentById('data');
var images = JSON.parse(field.value);
その後、Javascript オブジェクトとしてデータにアクセスできます。