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

How to parse JSON data into object instance in Bridge.NET?

我正在开发一个 Bridge.NET 项目,该项目基于模板数据动态创建 Bootstrap 表单。通过 jQuery.Ajax 调用接收的数据为 JSON。

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

Form form = Bridge.Html5.JSON.Parse<Form>((string)data);

其中 Form 是描述 bootstrap 表单的 class,类似于:

public class Form
{
    public string Title { get; set; }
    public Field[] Fields { get; set;  }
}

以上行构建但生成的 JavaScript 表现得像 form 没有实例化,所以下面的代码失败:

var title = form.Title;

有人对如何让它发挥作用有任何想法或解决方法吗?

以下示例演示了完整的场景。

例子

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; }
    }
}

编译器发出以下内容:

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
        }
    }
});

希望对您有所帮助。