<#@ template debug="false" hostspecific="false" language="C#" #>
什麼是hostspecific屬性在這裏表示。在t4模板中hostspecific是什麼意思?
<#@ template debug="false" hostspecific="false" language="C#" #>
什麼是hostspecific屬性在這裏表示。在t4模板中hostspecific是什麼意思?
主機專用設置爲「true」的模板可以訪問類型爲ITextTemplatingEngineHost
(MSDN)的成員this.Host
。然後,您可以使用例如其方法「ResolvePath」以便在模板中查找輸入所需的文件。
當您使用自定義模板引擎時,這更加有用。 見奧列格的博客在這裏:http://www.olegsych.com/2008/02/t4-template-directive/
您可以使用「this.Host」屬性一旦HostSpecific標誌設置,它的類型是ITextTemplatingEngineHost,並允許你做除其他事項外文件路徑解析。
但是,在Visual Studio中使用時(不是在構建時或從命令行),您還可以將主機強制轉換爲IServiceProvider並連接到Visual Studio的全局服務提供者。
這允許您使用Visual Studio的任何API來查找模板的數據,或者操縱您包含的項目或類似的操作。
這樣做的一個關鍵方案是使用CodeModel(或很快Roslyn)解析項目中的實時源代碼並將其用作生成元數據的源代碼。
'Olegsych'鏈接不再有效 – Tatranskymedved 2017-05-24 08:32:32