由于T4在项目上下文之外运行,因此我无权访问当前程序集或其他程序集。我如何注册访问引用的程序集,然后从中获取类型?在T4代码生成中,我如何从引用程序集中获取类型?
4
A
回答
3
我猜你想在项目中访问你的建筑物。我在下面的代码示例中添加了一个名为TestLib的解决方案,我将其构建到解决方案目录中的\ T4Libs文件夹中。 TestLib有一个名为MyHelper的类,它包含一个幻数。
FYI VS2010 SP1添加了很棒的功能,因为它不再锁定导入的组件,所以这是一个很好的使用版本。
<#@ assembly name = "$(SolutionDir)\T4Libs\TestLib.dll" #>
<#@ import namespace = "TestLib" #>
<#
var myHelper = new MyHelper();
#>
// <#=myHelper.MagicNumber#>
0
你正在寻找Assembly directive和/或你正在寻找System.Reflection.Assembly类的东西(如LoadFile)吗?
相关问题
- 1. 从代码生成工具获取对程序集的引用
- 2. 如何从引用程序集中获取类型?
- 3. 如何获取引用程序集中的所有类型?
- 4. 如何通过反射从引用的程序集中获取类型
- 5. Visual Studio 2010用于模板类型的T4代码生成
- 6. 我如何获得Dev-C++从c代码生成intel程序集?
- 7. T4 Toolbox - 在当前程序集中引用类
- 8. T4生成的程序集位置
- 9. 如何获得tlbimp不会自动生成引用类型的程序集?
- 10. 如何在VS2010中从我的UML模型生成C#代码?
- 11. 我如何可以自动T4代码生成亚音速
- 12. C# - 如何从使用LINQ的程序集中获取某些通用类型
- 13. 如何在VS2010中获取T4以迭代类属性
- 14. 我可以从PyInstaller生成的包中获取源代码吗?
- 15. 在Java中引用生成的代码
- 16. 用于生成类型化数据集的T4模板
- 17. 获取F#中引用的程序集#
- 18. 在T4中使用项目引用作为程序集路径
- 19. 记录类型中间代码生成
- 20. MSBuild从ProjectReference获取程序集引用
- 21. 如何获取程序集中的所有基类型?
- 22. 删除从T4 MVC代码生成中生成的编译器警告
- 23. 如何从GAC中引用程序集?
- 24. 如何在VS C++项目中使用T4代码生成模板?
- 25. 无法在T4模板中引用程序集
- 26. 如何从该模板中断开由T4模板生成的代码?
- 27. 寻找T4 CSLA代码生成器
- 28. T4模板 - 适合生成C++代码?
- 29. VsAddin或T4代码生成(VS 2008)
- 30. 如何从程序集级属性中引用私有类的类型?
如果您确实知道类型,那么这种方法可行 - 但如果您想使用字符串生成类型呢? – 2012-02-20 03:47:36
由于T4是用C#(或VB)编写的,所以使用Assembly.Load加载程序集并使用Assembly.GetType来获取类型。 – FuleSnabel 2012-02-20 06:23:55
智能解决方法。谢谢。 – 2013-10-08 00:53:48