2010-01-18 105 views
15

我使用Visual Studio中的代码生成T4模板,并想从模板代码引用本地.xml文件,以便我可以分析它有关应用程序的数据模型的元数据。从T4模板考辨项目目录

当模板代码(在编译时运行,或当您运行的模板“执行自定义工具”)试图通过Environment.CurrentDirectory以获取当前路径,我得到这个:

C:\ PROGRAM文件(x86)\微软Visual Studio 9.0 \ Common7 \ IDE

我真的想在项目中找到模板本身的路径,以便我可以使用相对路径来查找驱动的.xml文件它。有任何想法吗?

+2

http://stackoverflow.com/questions/1352570/get-project-or-relative-directory-with-t4 – 2010-04-17 20:19:49

回答

4

另一个(也许有点快)的方式来做到这一点是Host.ResolvePath(localFilePath)。

15

我找到了答案:

Path.GetDirectoryName(Host.TemplateFile)