0

以下は、クライアント側で取得している Json 出力です。

jsonp1363710839478({"Comment":[{"Author":"Plan_A","CommentText":"AI like hay almost as much as I like sun. Just joking","Title":"AMaking hay when the sun shines"},{"Author":"Plan_B","CommentText":"I like hay almost as much as I like sun. Just joking","Title":"Making hay when the sun shines"}]});

これを以下の例に変換する方法:

var sample= [
                       { Title: "The Red Violin", Author: "1998" },
                       { Title: "Eyes Wide Shut", Author: "1999" },
                      { Title: "The Inheritance", Author: "1976" }
                      ];

以下は私の完全なコードです:

コードビハインド:

   [OperationContract]
    [WebGet(ResponseFormat = WebMessageFormat.Json)]
    public CommentList GetComments()
    {
        Comments oComment1 = new Comments();
        oComment1.Title = "AMaking hay when the sun shines";
        oComment1.Author = "Plan_A";
        oComment1.CommentText = "AI like hay almost as much as I like sun. Just joking";

        Comments oComment2 = new Comments();
        oComment2.Title = "Making hay when the sun shines";
        oComment2.Author = "Plan_B";
        oComment2.CommentText = "I like hay almost as much as I like sun. Just joking";

        CommentList oCommentList = new CommentList();
        oCommentList.Comment.Add(oComment1);
        oCommentList.Comment.Add(oComment2);

        return oCommentList;
    }

クライアント呼び出し Jquery:

 $('#CommentsButton').click(function () {
        $.getJSON('http://localhost:55679/RESTService.svc/GetComments?callback=?', function (data) {

            for (var i = 0; i < data.Comment.length; i++) {

                alert(data.Comment[i].Author);


            }

        });

私はJqueryが初めてなので、詳細な説明/コードをいただければ幸いです。

4

2 に答える 2

1
 public Comments[] GetComments()
 {
    .....
    return new Comments[]{oComment1, oComment2};
 }

編集

[OperationContract]
[WebGet(ResponseFormat = WebMessageFormat.Json)]
public Comments[] GetComments()
{
    Comments oComment1 = new Comments();
    oComment1.Title = "AMaking hay when the sun shines";
    oComment1.Author = "Plan_A";
    oComment1.CommentText = "AI like hay almost as much as I like sun. Just joking";

    Comments oComment2 = new Comments();
    oComment2.Title = "Making hay when the sun shines";
    oComment2.Author = "Plan_B";
    oComment2.CommentText = "I like hay almost as much as I like sun. Just joking";

    return new Comments[]{oComment1, oComment2};
}
于 2013-03-19T18:11:27.950 に答える
0

JSON 応答のデータが 2 番目のコード例のデータと関係がない理由は何ですか?

必要のないフィールド ( ) を省略してCommentText、コメント テキストの値を変更する必要があるだけではありませんか?

[OperationContract]
[WebGet(ResponseFormat = WebMessageFormat.Json)]
public CommentList GetComments()
{
    Comments oComment1 = new Comments();
    oComment1.Title = "Your Title";
    oComment1.Author = "Your Date";

    Comments oComment2 = new Comments();
    oComment2.Title = "Your Title";
    oComment2.Author = "Your Date";

    Comments oComment2 = new Comments();
    oComment3.Title = "Your Title";
    oComment3.Author = "Your Date";

    CommentList oCommentList = new CommentList();
    oCommentList.Comment.Add(oComment1);
    oCommentList.Comment.Add(oComment2);
    oCommentList.Comment.Add(oComment3);

    return oCommentList;
}
于 2013-03-19T18:58:49.357 に答える