我有一个ASP.NET MVC应用程序,我为我的数据声明了一些C#模型。但是,我也在客户端处理数据,如果我能以某种方式获得C#类的JavaScript表示,那么我将不会在JavaScript中重新声明相同的数据结构。理想情况下,在我的客户端代码中,我将引用一个带有类名作为查询字符串参数的脚本,它将返回定义所需C#类的构造函数的JS代码。 E.g。
<script src="/model/get?type=Myapp.User"></script>
当然,它会在运行时在反射的帮助下发生。
有没有现成的解决方案呢?谢谢。
答案 0 :(得分:0)
您可以使用内置的JsonResult类将对象实例作为JSON返回,但是对于类型信息,您需要自己构建一些内容(再次可能以JSON形式返回)。
答案 1 :(得分:0)
Json.Encode(MyObject)
或获取newtonofts json库(更好),它有很多选项,包括类型信息,可用于继承。
然而......任何循环引用都是问题。通常,最好使用您的视图所需的最小对象结构来创建一个匿名对象,然后对其进行编码。