[英]visual studio 2010 conditional references
我們這里有多個產品共享一些公共庫。 這些庫是單獨解決方案的一部分(因此它們可以由TFS獨立構建),但問題是在開發過程中,必須修改公共庫,將其編譯為二進制,將其復制到公共位置,編譯產品解決方案.
為了避免這種情況,實際上我想知道是否可能有條件引用,因此對於調試配置,我會將它們作為項目引用進行引用,而在發布配置中它們將是二進制引用。
您應該能夠通過直接編輯項目文件來使用條件構造來執行此操作(VS IDE 不會為您執行此操作)。
例如,您可以使用“Choose”元素執行以下操作:
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003" >
<PropertyGroup>
<!-- ... -->
</PropertyGroup>
<Choose>
<When Condition=" '$(Configuration)'=='Debug' ">
<ItemGroup>
<ProjectReference Include="..\stuff\MyStuff.csproj">
<Project>{4c7bbe47-8d84-45d4-95f0-f640ba59563c}</Project>
<Name>MyStuff</Name>
</ProjectReference>
</ItemGroup>
</When>
<When Condition=" '$(Configuration)'=='Retail' ">
<ItemGroup>
<Reference Include="MyStuff.dll" />
</ItemGroup>
</When>
</Choose>
<!-- Rest of Project -->
</Project>
MSDN 有更多關於使用條件構造的信息。
您可能想看看 NuGet:
NuGet is a free, open source developer focused package management system for the .NET platform intent on simplifying the process of incorporating third party libraries into a .NET application during development .
(在這種情況下,您自己將成為第三方)
注意:這不會為您提供條件引用,但可以輕松更新公共組件。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.