2013-04-12 166 views
3

我生成使用T4模板我的實體的上下文中的子文件夾內。當t4模板文件運行時,它會在項目根目錄中添加生成的文件。我想要的是生成的文件放在一個子文件夾下。如果子文件夾不存在,則創建文件夾,然後在其中放置生成的文件。如果文件存在,則新文件不會生成。生成類使用T4模板

我是新來的T4模板。我換成

fileManager.StartNewFile(entity.Name + ".cs"); 

fileManager.StartNewFile("SubFolder\" + entity.Name + ".cs"); 

當我運行它,文件中創建子文件夾(使用Windows資源管理器打開文件夾),但項目沒有意識到這一點。如果沒有文件夾,則會出現奇怪的行爲。我錯過了什麼?

+0

我做的是將其模板在說子文件夾。這可能不適合你,但在我的情況下,它完成了工作。 – FuleSnabel

回答

1

不如把TT文件和模型類在同一個文件夾中。只需更改inputFile路徑,如inputFile = @「.. \ Model1.edmx」(如果您的edmx文件位於根文件夾中)。

另一件事可能需要改變的是名稱空間,默認情況下它是Code.VsNamespaceSuggestion(),它會在子文件夾名稱添加到namesapce。如「ClassLibrary1.SubFolder」。它可能會導致問題。你可以像命名空間名稱=「ClassLibrary1」那樣對命名空間進行硬編碼。