首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在Bridge.NET中将JSON数据解析为对象实例?

如何在Bridge.NET中将JSON数据解析为对象实例?
EN

Stack Overflow用户
提问于 2015-03-31 17:55:53
回答 1查看 952关注 0票数 2

我正在从事一个Bridge.NET项目,该项目基于模板数据动态创建引导窗体。数据通过jQuery.Ajax调用以JSON形式接收。

问题是,接收成功后,我无法将JSON数据转换回它们的对象表示形式,例如:

代码语言:javascript
复制
Form form = Bridge.Html5.JSON.Parse<Form>((string)data);

其中, form 是一个描述引导窗体的类,类似于:

代码语言:javascript
复制
public class Form
{
    public string Title { get; set; }
    public Field[] Fields { get; set;  }
}

上面的行是生成的,但是生成的JavaScript行为类似于form,因此下面的代码失败了:

代码语言:javascript
复制
var title = form.Title;

有人对如何使它起作用有任何想法或解决办法吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-03-31 23:09:28

下面的示例演示了整个场景。

示例

代码语言:javascript
复制
using Bridge;
using Bridge.Html5;

namespace Demo
{
    public class App
    {
        [Ready]
        public static void Main()
        {
            var data = "{ \"title\": \"testing\" }";
            Form form = JSON.Parse<Form>(data);

            Console.Log(form.Title); // logs "testing"
        }
    }

    public class Form
    {
        public string Title { get; set; }
    }
}

编译器发出以下命令:

代码语言:javascript
复制
Bridge.define('Demo.App', {
    statics: {
        config: {
            init: function () {
                Bridge.ready(this.main);
            }
        },
        main: function () {
            var data = "{ \"title\": \"testing\" }";
            var form = Bridge.merge(new Demo.Form(), JSON.parse(data));

            console.log(form.getTitle()); // logs "testing"
        }
    }
});

Bridge.define('Demo.Form', {
    config: {
        properties: {
            Title: null
        }
    }
});

希望这能有所帮助。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29375268

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档