C# C语言中的代码生成器 我必须在C语言中开发多语言代码生成器,实际上,我们有几种内部应用程序框架,用于各种语言java、python、C++的数据库访问。但它们的基本工作原理是相同的。我们觉得代码生成器将帮助我们减少开发时间。因此,为了便于开发,我决定编写一个代码生成器

C# C语言中的代码生成器 我必须在C语言中开发多语言代码生成器,实际上,我们有几种内部应用程序框架,用于各种语言java、python、C++的数据库访问。但它们的基本工作原理是相同的。我们觉得代码生成器将帮助我们减少开发时间。因此,为了便于开发,我决定编写一个代码生成器,c#,code-generation,C#,Code Generation,从数据库表生成类应该遵循哪些标准的基本技术步骤 我应该使用\t\r\n吗 实现最快速度的技术有哪些 我不想用正则表达式 请根据您的个人经历告诉我。这取决于您的意思;有很多选择: -提供一个对象模型,该模型可以为多种语言生成代码,但使用起来可能很棘手 T4又名TT——当下流行的代码 xslt——一个有用的后备方案;不像T4那样流行,但它是可行的——对于像VB这样依赖空格的语言来说很棘手 在所有情况下,我都会构建一个表示数据的基本对象模型,并从中进行工作。我知道有人只是用SELECT从数据库中编写代

从数据库表生成类应该遵循哪些标准的基本技术步骤

我应该使用\t\r\n吗

实现最快速度的技术有哪些

我不想用正则表达式


请根据您的个人经历告诉我。

这取决于您的意思;有很多选择:

-提供一个对象模型,该模型可以为多种语言生成代码,但使用起来可能很棘手 T4又名TT——当下流行的代码 xslt——一个有用的后备方案;不像T4那样流行,但它是可行的——对于像VB这样依赖空格的语言来说很棘手 在所有情况下,我都会构建一个表示数据的基本对象模型,并从中进行工作。我知道有人只是用SELECT从数据库中编写代码gen,但它非常丑陋,维护起来非常痛苦

您对\t、\r、\n等有什么问题吗?我不明白这个问题,但是:目标语言想要什么就什么!VB是这里比较棘手的一个C等更容易,因为他们不太关心空白


我已经成功地使用了xslt,但主要是因为我已经知道xslt,并且需要支持2.0 T4不在2.0中;否则T4将是我的下一个尝试,仅仅因为我想学习它-这取决于你的意思;有很多选择:

-提供一个对象模型,该模型可以为多种语言生成代码,但使用起来可能很棘手 T4又名TT——当下流行的代码 xslt——一个有用的后备方案;不像T4那样流行,但它是可行的——对于像VB这样依赖空格的语言来说很棘手 在所有情况下,我都会构建一个表示数据的基本对象模型,并从中进行工作。我知道有人只是用SELECT从数据库中编写代码gen,但它非常丑陋,维护起来非常痛苦

您对\t、\r、\n等有什么问题吗?我不明白这个问题,但是:目标语言想要什么就什么!VB是这里比较棘手的一个C等更容易,因为他们不太关心空白


我已经成功地使用了xslt,但主要是因为我已经知道xslt,并且需要支持2.0 T4不在2.0中;否则T4将是我的下一个尝试,仅仅因为我想学习它-p

似乎您需要模板功能,因此Marc Gravell建议的T4非常好。目前使用T4生成代码。过去,亚音速公司使用Asp.Net作为生成代码的模板系统

这似乎有点离题,但John Resig为Javascript编写了一个脚本,允许您处理语法如下的模板:

<script type="text/html" id="item_tmpl">
  <div id="<%=id%>" class="<%=(i % 2 == 1 ? " even" : "")%>">
    <div class="grid_1 alpha right">
      <img class="righted" src="<%=profile_image_url%>"/>
    </div>
    <div class="grid_6 omega contents">
      <p><b><a href="/<%=from_user%>"><%=from_user%></a>:</b> <%=text%></p>
    </div>
  </div>
</script>

将JSON对象作为数据源提供给模板。这种方法的好处是,您可以快速创建模板系统,而无需编译和部署—只需启动浏览器并生成代码。

您似乎需要模板功能,因此Marc Gravell建议的T4非常好。目前使用T4生成代码。过去,亚音速公司使用Asp.Net作为生成代码的模板系统

这似乎有点离题,但John Resig为Javascript编写了一个脚本,允许您处理语法如下的模板:

<script type="text/html" id="item_tmpl">
  <div id="<%=id%>" class="<%=(i % 2 == 1 ? " even" : "")%>">
    <div class="grid_1 alpha right">
      <img class="righted" src="<%=profile_image_url%>"/>
    </div>
    <div class="grid_6 omega contents">
      <p><b><a href="/<%=from_user%>"><%=from_user%></a>:</b> <%=text%></p>
    </div>
  </div>
</script>

将JSON对象作为数据源提供给模板。这种方法的好处在于,您可以快速创建模板系统,而无需编译和部署—只需启动浏览器并生成代码。

您能更具体一点吗?你能举一个多语言代码生成器的输入和输出的例子吗?你看过现有的代码生成器选项吗?@Dominic Cooney,@Mitch Wheat请看更新。你能更具体一点吗?你能举一个多语言代码生成器的输入和输出的例子吗?你看过现有的代码生成器选项吗?@Dominic Cooney,@Mitch Wheat请查看更新。T4很好,我正在使用codeplex中经过大量修改的linq2SQL模板来精确调整它以满足我的需要:T4很好,我正在使用codeplex中经过大量修改的linq2SQL模板来精确调整它以满足我的需要: