簡體   English   中英

條件參考

[英]Conditional References

目前我們的.net代碼不是特定於處理器的,但它依賴於庫(Oracle / ODP.Net)。 我們找到了一個直接編輯csproj文件的解決方案,並根據我們選擇的構建配置將引用放入帶有Condition子句的項目組中。 我們有32位調試/發布和64位調試/發布,並且在構建該配置時正確的程序集是引用。

這在構建時或多或少有效,但它會在Visual Studio(2008)中引起各種怪異。 最終結果是相同的組件在引用下顯示四次,三個具有黃色感嘆號。 它還會產生一些我無法擺脫的76個警告。 我們試圖針對0警告,因為我們想知道什么時候出現新警告,所以這有點問題。

是否有人知道條件引用的解決方案允許它看起來像一個引用(它確實是這樣)並且在構建時沒有填寫我的警告?

唯一想到的就是擁有4個獨立的項目文件......但是在你添加一個類時,在你不得不維護4個文件時,你可以在這里使用另一個csproj技巧:

<Compile Include="**\*.cs" />

其中(IIRC)說“包括文件夾結構中任何級別的所有cs文件”。

我們找到了一個與我們想要的有點不同的答案,但我很喜歡它。 如果在runtime-> AssemblyBinding下將其添加到配置文件中

<dependentAssembly>
<assemblyIdentity name="Oracle.DataAccess" publicKeyToken="89b483f429c47342"  />
<bindingRedirect oldVersion="2.111.6.20" newVersion="2.111.6.0" />
</dependentAssembly>

然后64位和32位版本使用相同的版本。 我們所要做的就是在部署時不在本地復制Oracle.DataAccess.dll,並讓它從GAC中提取。

謝謝!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM