2009-04-22 157 views
10

我正在嘗試在Visual Studio 2008中創建項目模板,並且已經成功完成這項工作。在Visual Studio項目模板中包含自定義DLL

是否有可能在我的項目模板中包含一些自定義程序集,因此一旦我實例化新項目,我不必添加對這些程序集的引用?如果可能的話,我該怎麼做呢?

+3

澄清 - 看起來OP想要將項目模板zip文件ASWELL中的依賴項DLL嵌入到項目引用的項目中。此刻我正在努力解決這個問題 - 因爲Visual Studio會忽略zip文件中的任何文件,而這些文件不是csproj文件中的項目 - 因此項目不會進行剪切!哎呀! – Adam 2012-04-03 04:29:10

+0

...將DLL鏈接到項目中是強制它們在VS選擇創建項目的新實例時被VS提取的一種方式。雖然它有點醜陋。 – Adam 2012-04-03 04:30:19

回答

0

是更新zip文件模板中的項目文件。或者使用導出模板與已包含的引用進行比較。 link text將使這更容易。

2

我需要自己做這個。今天最好的方法是創建一個包含所有'內容'的nuget包,比如DLL。然後將nuget包嚮導添加到vstemplate的WizardExtension部分,然後添加nuget包(作爲對在線存儲庫的引用,或者實際嵌入的.nupkg文件)...

您的nuget包將被打包在您的最終VSIX文件中 - 將所有內容全部拖放到Visual Studio部署中將是簡單的雙擊。 當開發人員根據您的模板創建新項目時會發生什麼情況,是否會創建項目結構,然後Visual Studio將會看到Nuget依賴項,並且它會自動將您的nuget包安裝到新模板中,並添加該項目的適當參考。

這裏有一對夫婦如何實現這一目標完全充實的解釋 - 馬辛的例子有一個下載的zip例子(你可以在他的評論中的鏈接):

Kedar R Kulkarni

Marcin Doboz

0

將DLL複製到項目文件夾的某處,將DLL添加到解決方案(添加現有項目,手動將過濾器設置爲* .dll),然後在項目設置中添加對該副本的引用。只要您首先這樣做,它應該存儲在導出的項目模板中。

相關問題