2015-09-08 146 views
0

是否可以用nuget更新AssemblyInfo.cs文件?使用Nuget包更新AssemblyInfo.cs

目前我唯一想到的解決方案是使用Install.ps1並在內容中播放內容,但這可能很麻煩。有沒有更優雅的解決方案?

+0

您想要更改/添加到assemblyInfo中? –

+0

例如我想補充一點: [assembly:log4net.Config.XmlConfigurator(Watch = true)] – ShP

回答

1

直到現在沒有其他方式更新/添加項目中的類中的條目。爲了執行自定義操作,引入了Install.ps1和Uninstall.ps1文件。 powershell腳本通過EnvDTE的對象傳遞以執行項目/解決方案文件的操作。

你可以看看這個sample reference。雖然示例作者正試圖在Main或Application_Start()方法中插入XMLConfigurator。您可以自定義以下部分來編輯AssemblyInfo.cs而不是Program.cs

param($installPath, $toolsPath, $package, $project) 
// ==> Change 
$item = $project.ProjectItems.Item("AssemblyInfo.cs") 
+0

謝謝,這將是好的。 – ShP

1

在安裝nuget包期間,除非使用powershell腳本,否則無法修改現有文件。對現有文件內容進行混淆可能會輕易破壞文件中的任何內容。 (個人注意事項:我會非常惱火)

您可以添加文件,但您應該小心,因爲開發人員升級包時可能會替換這些文件。

某些軟件包的根目錄中有一個readme.txt文件,它可能是向開發者提供指令的一種方式,因爲它會在安裝軟件包後打開。

提供良好的文檔並避免混淆其他文件或將大量文件添加到解決方案可能是最友好的方式。

+0

我同意,但有時爲了讓這些懶惰的人更容易閱讀手冊,更容易做出兩個版本,只需添加引用和內容,以便開發人員可以添加這些必需的修改,而對於懶惰的開發人員,只需運行不同的版本並安裝一切(有機會搞砸某些內容)即可。 – ShP

+0

@ShP - 可能會導致很多混淆。我更喜歡爲單個版本提供單一類型的軟件包。也許Nuget需要擴展以適應像這樣的功能(嚮導等) –