。net CodeGenerators?

问题描述 投票:0回答:3

我需要一个代码生成器:

  1. 是开源的
  2. 将以中等信任度运行
  3. 其中模板是可编译的,也可以作为资源文件嵌入的。

由于2和3,Webforms将不起作用。如果我使用虚拟路径提供程序,则它仅在完全信任的情况下运行;如果我将它们作为常规Web窗体运行,则必须提供.ascx文件,这是不可接受的。

更新:我想生成C#或VB.Net代码以及ASP.NET标记,尽管那没关系。

.net code-generation
3个回答
0
投票

检出T4 Toolbox


0
投票

[。NET 3.5 SP1中添加的模板支持,用于ASP.NET的动态数据。 Microsoft在.NET 4中对此进行了扩展,以使模板可以在Web表单以及ASP.NET MVC中使用,并且支持页面和字段模板。为动态数据引入的数据注释支持正成为自动验证支持的基础。数据注释也是Silverlight和WCF RIA服务的重要方面。

这些功能可以减少代码生成所需的工作,并使代码生成器更强大。

从现在开始,任何可行的代码生成解决方案都需要利用这些功能,而不管代码生成器是商业的,开源的还是定制的应用程序。

更新:

顺便说一句,如果您正在寻找运行时代码生成,您可能对LINQ expression支持更感兴趣;您可以使用LINQ来构建表达式树,并在运行时将其编译为代码。


0
投票

Visual Studio 2019中现在存在的T4。

您必须在项目中添加文本模板文件(文件类型= TT)

请参阅以下链接以获取有关T4的更多说明

//docs.microsoft.com/en-us/visualstudio/modeling/code-generation-and-t4-text-templates

© www.soinside.com 2019 - 2024. All rights reserved.