【问题标题】:Are there any limitations on what libraries can be imported in a t4 template?在 t4 模板中可以导入哪些库是否有任何限制?
【发布时间】:2009-12-12 20:58:52
【问题描述】:

我们正在尝试学习使用 T4 模板。我希望使用 System.Data.Entity.Design.PluralizationServices 库以便在我的模板中更好地复数一些实体模型名称,但我在实现这一目标时遇到了一些问题。

  1. 运行代码以生成输出文本。我认为这是可能的,但如果它不起作用,那么就没有必要再进一步了。 (我可以调用 Date.Now.ToString() 并得到预期的结果。我还没有尝试过更复杂的东西)
  2. 我在 Silverlight 应用程序中,因此我无法在需要生成的 .cs 文件的地方为 PluralizationServices 库添加对项目的引用。我打算只将 .tt 文件移动到非 SL 应用程序,使用命名空间并将生成的文件移动到正确的空间。还没有到那一步,所以我不知道会有多麻烦,但看起来应该不会太难。

我目前的问题是,当我导入库的命名空间时,我得到一个“ErrorGeneratingOutput”,但我还无法继续前进。

我很难找到有关导入命令如何工作的信息,所以我认为这很明显。但与此同时,这个不起作用,所以我想知道它是否可能是标准的例外。

<#@import namespace="System.Data.Entity.Design.PluralizationServices" #> 

我不知道为什么添加这条线(而且只有这条线)会导致一切中断。我什至还没有开始尝试使用它! T4 中的图书馆有什么我应该知道或阅读的吗?谢谢!

【问题讨论】:

    标签: silverlight templates t4


    【解决方案1】:

    这里是 description 导入指令如何工作的。在不知道在您的环境中转换模板时 T4 报告的实际错误的情况下,我只能猜测您没有添加 assembly 指令来引用 System.Data.Entity.Design 程序集。如果还是不行,在visual studio的错误列表中查看T4报错,应该比“ErrorGeneratingOutput”更有帮助。

    【讨论】:

    • 啊,你是对的。我添加了 并且能够继续解决其他问题。谢谢奥列格!
    猜你喜欢
    • 2012-01-11
    • 1970-01-01
    • 1970-01-01
    • 2019-09-24
    • 2023-03-23
    • 1970-01-01
    • 2013-08-08
    • 1970-01-01
    • 2010-10-28
    相关资源
    最近更新 更多