3

OrientDB のテストを開始しました。デモ データベースから次の JSON 応答を取得します。

{
    "schema":{
        "name":"OUser",
        "properties":{
            "roles":{
                "name":"roles",
                "linkedClass":"ORole",
                "type":"LINKSET",
                "mandatory":false,
                "notNull":true,
                "min":null,
                "max":null
            },
            "name":{
                "name":"name",
                "type":"STRING",
                "mandatory":true,
                "notNull":false,
                "min":null,
                "max":null
            },
            "password":{
                "name":"password",
                "type":"STRING",
                "mandatory":true,
                "notNull":false,
                "min":null,
                "max":null
            }
        }
    },
    "result":[
        {
            "@type":"d",
            "@rid":"#4:0",
            "@version":0,
            "@class":"OUser",
            "name":"admin",
            "password":"{SHA-256}8C6976E5B5410415BDE908BD4DEE15DFB167A9C873FC4BB8A81F6F2AB448A918",
            "status":"ACTIVE",
            "roles":[
                "#3:0"
            ]
        },
        {
            "@type":"d",
            "@rid":"#4:1",
            "@version":0,
            "@class":"OUser",
            "name":"reader",
            "password":"{SHA-256}3D0941964AA3EBDCB00CCEF58B1BB399F9F898465E9886D5AEC7F31090A0FB30",
            "status":"ACTIVE",
            "roles":[
                "#3:1"
            ]
        },
        {
            "@type":"d",
            "@rid":"#4:2",
            "@version":0,
            "@class":"OUser",
            "name":"writer",
            "password":"{SHA-256}B93006774CBDD4B299389A03AC3D88C3A76B460D538795BC12718011A909FBA5",
            "status":"ACTIVE",
            "roles":[
                "#3:2"
            ]
        }
    ]
}

そこから OUser オブジェクトのリストを取得するにはどうすればよいでしょうか? JSON.Net、JavaScriptSerializer などを使用していますか?

4

3 に答える 3

1

http://www.json.org/には、C# 用の多数の json パーサーがあり ます。fastJSON はかなり速いはずです。

于 2011-11-17T09:25:47.923 に答える
0

ログインしたら、OUser クラスに対してクエリを実行します。

select from ouser

HTTP プロトコル経由では、次のアドレスに対する GET リクエストになります。

http://localhost:2480/query/demo/sql/select%20from%20ouser

{  
  "result": [{
    "@type": "d", "@rid": "#4:0", "@version": 0, "@class": "OUser", 
    "name": "admin", 
    "password": "{SHA-256}8C6976E5B5410415BDE908BD4DEE15DFB167A9C873FC4BB8A81F6F2AB448A918", 
    "status": "ACTIVE", 
    "roles": ["#3:0"]
  }, {
    "@type": "d", "@rid": "#4:1", "@version": 2, "@class": "OUser", 
    "name": "reader", 
    "password": "{SHA-256}3D0941964AA3EBDCB00CCEF58B1BB399F9F898465E9886D5AEC7F31090A0FB30", 
    "status": "ACTIVE", 
    "roles": ["#3:1"]
  }, {
    "@type": "d", "@rid": "#4:2", "@version": 0, "@class": "OUser", 
    "name": "writer", 
    "password": "{SHA-256}B93006774CBDD4B299389A03AC3D88C3A76B460D538795BC12718011A909FBA5", 
    "status": "ACTIVE", 
    "roles": ["#3:2"]
  }

] }

于 2011-11-17T16:35:50.430 に答える
0

これは、json.NET を使用して逆シリアル化する簡単な構造のように見えます

于 2011-11-17T16:53:31.080 に答える