gpt4 book ai didi

javascript - 从 c# 对象自动生成 javascript 对象模型

转载 作者:行者123 更新时间:2023-12-03 08:05:26 26 4
gpt4 key购买 nike

寻找现有的、经过验证的解决方案以快速生成客户端 javascript 对象模型 表示现有的 c# 对象。我想那里有一个 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();

    没有很多评论,所以我猜每个人都手动或根本不这样做。着眼于创建我自己的 T4 模板来解析 c# 文件并生成我的客户端 API。

    最佳答案

    经过无数次搜索后,我找不到任何接近我正在寻找的东西。显然,过去几年每个人都被 JSON 流行语所吸引,没有人会自动生成客户端对象模型。我查看了 Codesmith 和 T4 模板。也没有任何用于解析代码文件的内置机制。两者都需要您进行反射(reflection)以获取属性及其类型,这 100% 落在开发人员的肩上。一旦您跳过编写所有反射代码的障碍,这引出了一个问题,Codesmith 或 T4 模板给您带来什么好处?绝对没有..你也介意将你的反射代码放在一个可重用的类库中,然后从控制台应用程序中调用它,这正是我所做的。

    关于javascript - 从 c# 对象自动生成 javascript 对象模型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8028664/

    26 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com