【发布时间】:2011-11-06 16:57:03
【问题描述】:
寻找现有的、经过验证的解决方案,以快速生成代表现有 c# 对象的客户端 javascript 对象模型。我想那里有一个 T4 模板或其他一些方法,但我缺乏找到它的术语。我不是在谈论序列化以获取现有 c# 对象实例的 JSON 表示或与反序列化有关的任何事情。我只是想为 20 多个 c# 对象生成 javascript 对象模型,并且我希望能够在 c# 代码更改时立即重新生成它们。
我正在寻找的过度简化示例:
C#代码:
[Serializable()]
public class Cat
{
public string Name { get; set; }
public string Breed { get; set; }
}
要生成的Javascript对象模型:
function Cat()
{
this.Name = "";
this.Breed = "";
}
@巴斯兹
JSON 是一种基于文本的数据交换标准,这不是我想要的。我需要生成一个包含 20 多个对象的客户端 API,我可以将它们放入一个 javascript 文件中,并将该脚本链接到我的各种网页。
JavaScriptSerializer 可以从 c# 对象中吐出如下字符串:
{ "Name": "Hayden", "Breed": "Rabbit” }
但这不是一回事:
function Cat()
{
this.Name = "";
this.Breed = "";
}
- JSON 字符串不是命名函数。
- 所有元素都被引用并采用 JSON 格式,这需要手动解析字符串才能将其转换为我需要的格式。
- 由于#1,您不能像下面这样新建 Cat 实例
var myCat = new Cat();
cmets 并不多,所以我猜每个人都手动或根本不这样做。着眼于创建我自己的 T4 模板来解析 c# 文件并生成我的客户端 API。
【问题讨论】:
-
有趣的想法,如果你解释你试图通过这种方法完成什么,它可能会帮助人们试图提供答案。例如,使用什么/如何使用这些对象。
-
嗨,我在考虑写一个类似的问题时发现了你的问题,我想知道我们是否可以尝试使它更通用和更令人满意。两个都。这就是我要的。我有一个使用 Entity Framework 和 MVC4 完成的 REST API,所有这些都带有很好的自动测试。现在,我想创建一个 javascript 库,ly 客户端将使用它来调用这些服务。我会喜欢不必直接编写 javascript,而是从 API 和对象模型自动生成。当然,我知道这可以通过反思来完成,这就是我现在可能要走的方向。但是,找到这样做会更好
标签: javascript object model