问题标签 [tangible-t4-editor]

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 投票
2 回答
2215 浏览

visual-studio - T4 pro editors (payable) 比较

我有兴趣购买全功能 T4 编辑器。我在看:

  • 有形 T4 编辑器专业版
  • Clarius Visual T4 编辑器专业版

它们都有相同的价格标签(100 美元)。

Clarius 的产品似乎功能更丰富,但真的如此吗?如果是,那么它是否会像通常使用丰富的 Visual Studio 插件那样占用更多内存……Vis​​ual Studio 支持呢?

该领域的其他参与者

自 2011 年夏季以来,还有Devart 的 T4 编辑器可用,它是免费的,并且支持语法高亮以及智能感知。

0 投票
3 回答
1104 浏览

visual-studio - 在 VS 2010 RC 中安装有形 T4 编辑器

我从 VS 库安装了(免费的)有形 T4 编辑器,然后关闭/重新启动了 VS。我在管理员帐户下在 XP 上运行。VS Extension Manager 表示编辑器已安装并启用。

这是我的问题:当我添加新项目时(如此处的视频中所示),我看不到任何有形模板。我错过了什么?

(顺便说一句,我环顾四周,找到了T4 Toolbox并安装了它,但仍然看不到有形或工具箱的新模板)。

谢谢!

0 投票
2 回答
988 浏览

visual-studio - 有人可以摆脱我这些动荡的 T4 模板编辑器吗?

我正在使用 Tangible 的编辑器,而且(没有冒犯的家伙)它很烂。它比记事本更痛苦的一步。但它(afaik)是镇上唯一的游戏。

有人对以非痛苦方式创建 T4 模板有任何提示/技巧吗?

例如,我正在考虑创建一个 T4 模板,该模板基本上将解决方案中定义的类转换为模板生成器。DTE,查找标有这个或那个属性的代码,运行这个或那个方法,然后将结果放入文件中。至少我会从交易中获得合法的智能......

0 投票
1 回答
582 浏览

visual-studio-2010 - tt 模板和语法着色的默认编辑器

我在 vs2010 中安装了有形的 t4 编辑器扩展,它为 t4 模板 (.tt) 提供了一些基本的语法着色。

当我通过向导添加 t4 模板时,它会以语法着色打开。

关闭文件并双击后,它会以语法着色再次打开。

关闭文件并使用“打开方式”菜单并选择默认值:“自动编辑器选择”后,它会以 xml 文件语法着色打开。

这很奇怪,因为我一直认为双击等于默认的“打开方式”菜单项。你知道发生了什么事吗?

当一个人在不使用向导的情况下添加一个 t4 模板时就会出现问题 - 没有语法着色。

0 投票
2 回答
3363 浏览

visual-studio-2010 - 有哪些 T4 编辑工具?

我不经常使用 T4 模板;通常当我这样做时,它是在编辑其他项目的那些(特别是 SubSonic 和 T4MVC)。这种体验总是很不愉快(这当然是我不经常使用它们的原因)。

这些是我所知道的工具,它们都不太符合要求。

  1. 克拉里乌斯视觉 T4

    • 不支持 Visual Studio 2010。他们的博客提到正在进行的工作,但那是 2 个月前的事,此后没有更新。他们的支持论坛充满了垃圾邮件和关于何时支持 VS2010 的问题。
      我从事的大多数项目都在 Visual Studio 2010 中,我处理的模板要求它们自己在 Visual Studio 主机中运行(因为它们通过 VS 的自动化对象模型访问项目信息)。这就是为什么我正在寻找一个与 VS2010 兼容的编辑器。
  2. 有形的 T4 编辑器

    • 我第一次尝试使用它时,我以为 Visual Studio 2010 已经崩溃了。结果我没有等待足够长的时间(编辑器窗口出现了 2 多分钟)。叫我挑剔,但仅此一项就让我脱离了这个工具。

    • 我有一个修改后的 T4MVC 模板可以工作。安装 Tangible 的 T4 编辑器后,模板失败并出现多个错误。如果我随后卸载有形的 T4 编辑器,该模板将再次运行。因此,编辑器似乎改变了 Visual Studio 中 T4 的行为。也许很明显,这是完全不可接受的。

还有其他我错过的 T4 编辑器吗?有没有其他人使用这些工具,遇到同样的问题,并成功地使用它们?

我还应该说,对我来说最重要的功能只是区分作为模板一部分运行的代码和获得输出的代码/文本。其他的都是肉汁。

0 投票
2 回答
344 浏览

windows-7 - Visual Studio 2010 SP1 和 Tangible T4 Editor Pro v1.950 崩溃

错误说

我缺少 C:\Users\\AppData\Local\assembly\dl3\4WT9GZ6E.WD1\0CNLWRJ6.ODR\3f01d2db\26ba7213_ebf0cb01 中的 ActiproSoftware.CSharpHostLanguage.xml 并在打开 .tt 或 .ttinclude 文件时崩溃。

我有 Visual Studio 2010 sp1 和 windows 7 sp1 x86(32 位)。

有形 T4 编辑器是 v1.950。

欢迎任何建议。谢谢。

更新:最新版本 1.962 修复了这个问题。

0 投票
1 回答
1588 浏览

c# - 有一些使用 T4 模板的情况

我正在尝试为自定义控制器(带有服务)创建 T4 模板。但是,我在设置时遇到了一些问题。我目前使用有形的免费 T4 工具编辑器和 TextTemplatingFileGenerator 作为自定义工具。我在实验时遇到了几个问题:

1:我尝试使用 MvcTextTemplateHost mvcHost = (MvcTextTemplateHost)(Host); 它说“找不到类型或命名空间名称 MvcTextTemplateHost(您是否缺少 using 指令或程序集引用?)。它说要清除自定义工具,但我想知道如果我如何查看生成的 T4 文件清除工具?

2:另一种方法是 Steve Sanderson 的 CustomTemplate,但我遇到了 DynamicTransform 找不到的问题,我想知道在哪里可以获得使用它所需的文件。如果我需要为此清除工具,那么如何查看生成的示例文件?非常感谢你。

马克斯·吉尔曼

一些示例代码:

0 投票
1 回答
5441 浏览

c# - 为什么使用 ttinclude 而不是编译的程序集?

我一直在编写一个程序集来简化我的大部分 POCO 类型生成。我有一个核心程序集,其中包含多个 tt 文件并用于生成代码。

我这样做的原因是因为无论我尝试哪个扩展(Devart T4、Tangible-T4 或 Visual T4),都没有 Visual Studio 的 C# 编辑器提供的智能感知和支持那么好,所以用纯 C# 编写代码生成可以提高经验很多。

我面临的最大问题是实体框架助手类(例如Accessibility,等)是在 ttinclude 文件中定义的,而不是在程序集中定义的CodeGenerationToolsMetadataTools目前我不得不重写这些类提供的许多功能,以便它可以从程序集中使用。

我的问题是,为什么实体框架团队决定使用 ttinclude 文件而不是一些已编译的程序集?使用程序集方法似乎在更多情况下更有用,并且仍然不会影响 T4 代码生成(而不是使用<#@ include #><#@ assembly #>)。

我想知道解决这个问题的最佳方法是什么,我已经考虑EF.Utility.CS.ttinclude过运行TextTransform.exe然后获取生成的 C# 并编译它,这是否可取?

谢谢,卢克

更新

目前我所做的是添加EF.Utility.CS.ttinclude到我的项目中,将文件上的自定义工具设置为TextTemplatingFilePreprocessor. 这将生成包含类的代码。然后我复制了这个cs文件,删除了负责编写输出的类(它有方法TransformText())并编译成一个程序集。我现在可以在我的程序集中使用实体框架实用程序类。

0 投票
2 回答
885 浏览

vb.net - T4 中的扩展方法

我正在尝试在 VS2008 for VB.NET 的 T4 模板中使用PGK.Extensions,我得到:

RemoveAllSpecialCharacters 不是字符串的成员..

我的 T4 标头:

在块代码中使用扩展:

RemoveAllSpecialCharacters 是来自 PGK.Extensions.dll 的字符串扩展方法。

有谁能够帮助我?

编辑:

好的。它的:

但这会破坏 VS2008 插件中的 DevArt T4 编辑器智能感知和语法高亮。请改用有形 T4 编辑器。

0 投票
4 回答
17077 浏览

c# - T4 模板不会随 build 转换

我在 Windows 7 上使用 VisualStudio Ultimate 2012(更新 1)。我可以让我的 T4 模板通过以下方式生成文件: 右键单击 [tt 文件] | 运行自定义工具。效果很好!(对我来说是的)。如果我运行菜单命令,它也可以工作:Build | 转换所有 T4 模板。但我想要自动化!当我尝试在每次构建时生成生成的代码文件时遇到问题——这是我的目标。
我看了这个: Visual Studio 中的 T4 转换和构建顺序

这不是我想要的。它讨论了使用预构建构建事件。我希望它成为构建的一部分。

还有这个: 有没有办法让 Visual Studio 在成功构建时运行“转换所有模板”?

这也不是我想要的。它讨论了使用构建后事件。

然后我发现了这个: 了解 T4:MSBuild 集成

来自Oleg Sych 的博客

完美的!这就是我要的。尽管他的博客讨论了 VS2010,但我已在适用的情况下将其应用于 VS2012。

我浏览了他实现这一点的每一个步骤。我安装了Visual Studio SDK 2012 & Visual Studio Visualization and Modeling SDK (2012)

我开始使用 Tangible T4 插件,但认为有问题,我使用了 Oleg 的 T4 Toolbox Beta。可悲的是,我似乎得到了相同的结果:构建错误。

我按照他在他的网站上的指示重新阅读了所有步骤和部分。我已经研究了几天,现在我在这里的第一篇文章。我被困住了。谢谢你看...

回顾一下:当我在 Visual Studio 2012 中构建或从命令行运行 msbuild 时出现错误(但当我运行自定义工具或使用手动转换所有 T4 模板时再次出现错误- 两者都可以正常工作)。

这是我的 t4template 调用s_code.tt

这是我的.csproj文件:

MSBuild这是我从命令行运行后看到的错误:

你能看到我正在做的任何导致错误的事情吗?你知道如何修复它,以便我可以使用 msbuild 而不会遇到这个错误吗?