2011-01-13 3 views
0

という名前のテーブルがある場合は、名前、ID、年齢フィールドを持つユーザを取得し、これらのデータを取得してJSONのシリアル化としてvarに入れたいと思っています。私が望むようにそれを改革するためのjavascriptページ。私はこれらのデータをJSONとしてvarに入れる方法、javascriptファイルのデータを読み込む方法を知っておく必要があります(それぞれを扱う方法:array [name])!!!
asp.netコードでこれらのデータを処理する方が良いでしょうか。それをJavaScriptで送信するか、javascriptに送信してから対処してください。あなたは.NETのオブジェクトを持っている場合、あなたはエスケープ引用符や何も心配する必要はありませんJavaScriptSerializerJSONについて

List<User> myUsers = GetAllUsers(); 
string userJson = new JavaScriptSerializer().Serialize(myUsers); 

この方法を使用して、それをシリアル化することができますD

答えて

1

:Uに感謝します。

var myUsers = ... // a JS object 
var userJson = JSON.stringify(myUsers); 
:あなたは、サーバーに渡すことを、他の方法で回避

var userJson = ... // the JSON string 
var myUsers = JSON.parse(userJson); 

が、あなたはjavascriptオブジェクトを持っていることがあります。今、あなたは文字列を持っていることを、あなたはJavaScriptにそれを供給することができます

文字列userJsonをサーバーに渡すと、サーバーを逆シリアル化できます。あなたはJSオブジェクトは.NETオブジェクト、または.NETオブジェクトの配列に、プロパティ名の観点から、完全に一致することがわかっている場合は、たとえば、次のような、それをデシリアライズすることができます

List<User> myUsers = new JavaScriptSerializer().Deserialize<List<User>>(userJson); 

がにISNが」直接JSオブジェクトの構造にマッピングできる.NETオブジェクトT、あなたはあなたにそれのインとアウトをお教えします素晴らしい記事を持って4guysfromrolla

object myUsers = new JavaScriptSerializer().DeserializeObject(userJson); 
+0

素晴らしい:)しかし、まだ私の2番目の質問について私に答えなかった!! – Rawhi

+0

@ Rawhi:うーん...私は答えを編集して、逆のやり方を含むようにしました。それはあなたが望んだことですか?あなたの質問がどういうものなのか分かりません... JSONをサーバー側またはクライアント側で扱う方が良いでしょうか? JSONは、クライアントとサーバーの間であらゆる方向にデータを渡すのに適しています。一方の文字列にシリアル化し、もう一方の端に文字列を渡し、その文字列をそのオブジェクトの最後にデシリアライズしたいとします。その方向性は、どこにあるデータ、どこに行きたいかによって異なりますが、一般的には両端でJSONを扱います。 –

+0

例えば、ユーザーのリストがあり、それぞれ1(テーブル、CSSなど)の装飾をしたい場合は、 をサーバー側で実行し、それをJSに文字列として送信することをお勧めしますJSファイルに純粋なデータを送信し、クライアント側で何をしたいのですか? – Rawhi

関連する問題