当向VS 2008 C#项目添加用户控件或项目引用时,我只能添加一个程序集的配置。是否可以添加不同的配置,具体取决于容器项目的配置。
例如,我正在开发一个用户控件,并且正在工作中一个示例应用程序。我想添加用户控件,以便示例的调试版本将使用用户控件的调试版本,而示例的发布版本将使用用户控件的发布版本。
有什么建议吗?
当向VS 2008 C#项目添加用户控件或项目引用时,我只能添加一个程序集的配置。是否可以添加不同的配置,具体取决于容器项目的配置。
例如,我正在开发一个用户控件,并且正在工作中一个示例应用程序。我想添加用户控件,以便示例的调试版本将使用用户控件的调试版本,而示例的发布版本将使用用户控件的发布版本。
有什么建议吗?
<Reference Include="MyLibrary">
<HintPath>..\$(Configuration)\MyLibrary.dll</HintPath>
</Reference>
如果以调试模式编译,则会添加对“..\Debug\MyLibrary.dll”的引用;如果以发布模式编译,则会添加对“..\Release\MyLibrary.dll”的引用。
您可以通过编辑 csproj 文件来实现这一点;在引用中添加“Condition”属性即可。
<Reference Include="Foo" Condition="'$(Configuration)'=='Debug'"/>
<Reference Include="Bar" Condition="'$(Configuration)'=='Release'"/>
然而,我对这对单元测试意味着什么表示担忧。
@Marc Gravell的建议虽然可行,但是你不想把两个项目放在同一个解决方案中吗?如果它们在同一个解决方案中,当引用用户控件项目到示例应用程序项目时,可以添加项目引用。使用项目引用时,Visual Studio将自动为Debug版本添加Debug版本,为Release版本添加Release版本。