问题标签 [t4]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
2783 浏览

c# - SQL SMO 未枚举表

我只是问这个问题,我觉得自己很笨,但我没有从谷歌那里得到任何帮助,我通过简单的搜索 SMO 浏览了所有 SO 的结果,也没有看到它。

简短的版本是我开始玩 T4。我正在扩展Oleg Sych 的初始教程,以提供对所有表的枚举以创建一个(恕我直言,相当愚蠢)删除过程。这只是一个实验,所以它完全没用并不会打扰我。:)

我对 Oleg 教程的扩展如下所示:

问题是Tables集合中没有返回表。这由我生成的表计数 SQL 注释验证,它输出0.

如所写,上面的代码生成以下内容:

但是,如果我删除 for 循环并手动提供此数据库中存在的有效表名,它会为该表生成(又是愚蠢的)proc。

这些表被分成一个模式,这有关系吗?此外,这与 SQL2005 实例背道而驰——这可能会导致问题吗?

最后,我还发现我无法通过 Synonyms 集合枚举同义词。(我想我会很聪明,走那条路,因为表在一个模式中,但是定义了同义词。但是......没有骰子。)

再次重申,上面的代码自然不是生产,甚至不值得生产。我只是想同时学习 T4 和 SMO,并在尝试做一些我认为简单得可笑的事情时遇到了障碍。:)

0 投票
2 回答
1039 浏览

visual-studio-2010 - 是否有适用于 Visual Studio 2010 CTP2 的 T4 编辑器?

我正在寻找 VS 2010 CTP2 的 T4 编辑器。Clarius 在他们的博客上说他们正在等待 Beta1。

任何想法其他想法在哪里看?

谢谢

蒂姆

0 投票
1 回答
352 浏览

visual-studio - 能否在 VS2008“添加新项目”对话框中添加自定义 T4 模板?

我创建了一组要在多个项目中共享的模板。是否可以将模板添加到项目“添加新项目”对话框中,以便当我选择它时,会从模板生成代码文件的实例并添加到项目中?

更新

感谢您的建议普雷特。这回答了这个问题,但我想我问错了。再想一想,我现在希望能够自动处理 T4 模板并将参数从用户输入传递给它们。

我现在从一个新的角度来看待这个问题。专门尝试使用Microsoft.VisualStudio.TextTemplating.Engine类和 GAX 自己从模板生成代码文件。

0 投票
1 回答
486 浏览

visual-studio-2008 - 在 VS 2008 SDK 中使用文本模板引擎时出现“找不到入口点”错误

我正在使用Microsoft.VisualStudio.TextTemplating.EngineVS 2008 SDK 中的类以及Microsoft.Practices.RecipeFramework.VisualStudio.Library.Templates命名空间中的对象来自动化从 T4 模板创建 C# 类的过程。

这是我的代码。它直接取自Oleg Sych博客上的示例......

问题

System.EntryPointNotFoundException在处理模板并且应该返回输出代码文件的地方得到一个...

此异常表明我在某处存在组件版本不匹配,谷歌搜索显示其他人也遇到过此问题,但我正在使用的组件版本要旧得多。我的版本是...

Visual Studio SP1 9.0.30729.1
Microsoft.VisualStudio.TextTemplating 9.0.0.0
Microsoft.Practices.RecipeFramework.VisualStudio.Library 1.4.0.0

我有最新版本的 GAX、GAT 和 VS2008 SDK(今天全部下载并安装)。

有谁知道发生了什么,或者我可以如何进一步调查?

如果可能的话,我真的想避免必须开始使用跟踪器来跟踪调用堆栈:(

0 投票
4 回答
2110 浏览

c# - 存储 T4 配置设置的最佳方式

我需要使用 Visual Studio T4(模板)创建一些文件。将一些配置设置导入多个 .tt 文件并在模板代码部分中访问它的最佳方法是什么。

0 投票
2 回答
515 浏览

c# - 滥用类型重载在 C# 中创建样板代码

在我目前正在进行的一个项目中,我们添加了一个用于访问HttpSessionState对象的包装类。问题在于当前的解决方案意味着您必须编写一些代码来包装功能。我想出了以下解决方案

现在您只需使用即可创建所需的存储

该代码有效并且很好,因为您可以轻松创建包装类(单个 using 语句)并且一切都是静态的。然而,代码有点滥用类型系统,所以可能有点模糊?在我添加它之前,我想得到一些反馈,所以这里有一个问题:

如果您我们正在维护上述系统并遇到上面的代码,您会

  1. 追捕并杀死签入文件的人?
  2. 对聪明的尝试有点恼火,但让它溜走?
  3. 认为这是避免样板代码的好方法吗?

您更喜欢使用文本生成工具] 像T4吗?

感谢您的任何回复,

麦兹

0 投票
3 回答
4522 浏览

asp.net-mvc - Visual Web Developer Express 中的 SubSonic ASP.NET MVC 示例

在 Visual Web Developer Express 2008 中,SubSonic ASP.NET MVC 模板似乎不适用于我添加的新数据库。我删除了 Chinook 数据库并创建了自己的数据库。我了解 Models 文件夹中的 .tt 文件用于生成代码,但它们没有(尽管将 ConnectionStringName 更改为我在 web.config 中设置的内容)

右键单击每个 .tt 文件并选择“运行自定义工具”不会生成任何内容,除了错误消息:

那个工具保存在哪里?CodeTemplates 中有 .tt 文件,当您创建新的控制器或视图时会使用这些文件,因此我假设有一个工具可以执行此操作。

0 投票
3 回答
553 浏览

c# - T4 模板可以使用同一个库吗

我有一个定义类的库

在同一个库中,我添加了一个 tt 文件

我收到错误“编译转换:找不到元数据文件 'ClassLibrary.dll' d:\documents\visual studio 10\Projects\ConsoleApplication2\ClassLibrary1\TextTemplate1.tt”

如何解决这个问题?

[发生在 VS 2010、VS2008 上]

0 投票
2 回答
1505 浏览

visual-studio - T4 模板和 Visual Studio 项模板

是否可以创建从 T4 模板生成的 Visual Studio 项目模板?

我的 google-fu 似乎不够强大,无法给出答案!

0 投票
1 回答
581 浏览

parameters - T4 混乱

我想我了解 T4 的基本原理,但我很难弄清楚如何将其应用于我的特定情况。

我有一个显示某种对象列表的应用程序 - 没关系。我想允许用户选择一个或多个这些对象并将它们提交到任何模板。例如,模板可以生成描述对象的 html 文件或以某种方式或其他方式操作它们的 powershell 脚本。

我想不通的是如何将选定的对象传递到我的自定义主机中。

我可以创建一个扩展的 tt 包含文件,该文件调用我自己的 api 来从它们的存储中检索这些对象,但是当我已经在范围内拥有对象的实例并且我只想检查它们以产生一些文本输出时,这似乎很愚蠢。

我希望这是有道理的...

我尝试向主机添加属性,然后使用主机特定设置,我认为我可以通过这些属性使用对象,但我得到的只是关于序列化和此类内容的错误。

如何做到这一点的一个非常好的例子会很棒:)

谢谢