使.NET引用配置依赖
发布时间:2020-12-14 04:51:23 所属栏目:百科 来源:网络整理
导读:我的应用程序有几个配置可以进行调试/发布构建,还有32位和64位构建.现在使用32位和64位构建,我需要引用不同的dll(即使用x86构建的那些和使用x64构建的那些),但引用似乎对我的项目是全局的,并且不依赖于配置.现在,当我从32位切换到64位构建时,我总是必须交换
我的应用程序有几个配置可以进行调试/发布构建,还有32位和64位构建.现在使用32位和64位构建,我需要引用不同的dll(即使用x86构建的那些和使用x64构建的那些),但引用似乎对我的项目是全局的,并且不依赖于配置.现在,当我从32位切换到64位构建时,我总是必须交换引用(反之亦然).为不同配置实现不同引用的适当方法是什么?
解决方法
这可以通过对项目文件的一些手动操作来完成.
首先,您需要右键单击该项目,然后单击“卸载项目”.然后再次右键单击它并选择编辑[项目名称]. 当它在编辑器中加载时,您将看到您的refences的各种条目: <ItemGroup> <Reference Include="System.Xml" /> <Reference Include="WindowsBase"> <RequiredTargetFramework>3.0</RequiredTargetFramework> </Reference> <Reference Include="PresentationCore"> <RequiredTargetFramework>3.0</RequiredTargetFramework> </Reference> <Reference Include="PresentationFramework"> <RequiredTargetFramework>3.0</RequiredTargetFramework> </Reference> <Reference Include="Microsoft.Practices.ServiceLocation,Version=1.0.0.0,Culture=neutral,PublicKeyToken=31bf3856ad364e35,processorArchitecture=MSIL"> <SpecificVersion>False</SpecificVersion> <HintPath>..CommonLib3rdPartyPrism4.0DesktopMicrosoft.Practices.ServiceLocation.dll</HintPath> </Reference> </ItemGroup> 请注意,这些都在ItemGroup节点内. <ItemGroup Condition="'$(Configuration)|$(Platform)' == 'Release|x86'"> <!-- these are the references used when there is a Release x86 build --> <Reference Include="System.Xml" /> </ItemGroup> 请注意,无法通过UI执行此操作,因此您必须手动管理这些参考列表(例如,如果您需要添加其他参考). 还要注意,这不是一个黑客…它只是使用features of MSBuild之一(VS用来构建你的项目).你可以使用你喜欢的任何表达式来拥有尽可能多的这些ItemGroup列表 – 如果它没有表达式,那么它将始终包含在构建中. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |