gpt4 book ai didi

c# - 在构建 .NET 4.0 项目时自动构建 .NET 4.5 项目?它不需要被引用

转载 作者:太空宇宙 更新时间:2023-11-03 15:33:30 25 4
gpt4 key购买 nike

我有一个使用 .NET 4.0 构建的 C# 项目,它对使用 .NET 4.5 构建的项目具有软/间接依赖性(通过反射)。

我试图找出 my40project.csproj 中的条目,当我构建 my40project.csproj 时,它将构建 my45project.csproj。不过,我不需要在 4.0 项目中引用生成的 DLL。

我在 my40project.csproj 中有以下条目:

<ProjectReference Include="$(RootDir)\path\to\project\my45project.csproj">
<Project>{some guid}</Project>
<Name>my45project</Name>
</ProjectReference>

但是,这会产生以下错误消息:

"D:\path\to\project\my40project.csproj" (default target) (1) ->
(ResolveAssemblyReferences target) ->
error SCP3000: A non-baseline warning (MSB3274) was encountered: The primary reference "my45project.dll" could not be resolved because it was built against the ".NETFramework,Version=v4.5" framework. This is a higher version than the currently targeted framework ".NETFramework,Version=v4.0".

有谁知道我该如何解决这个问题?如果这是重复的,我深表歉意;搜索时发现的问题直接涉及在 4.0 项目中使用生成的 .NET 4.5 DLL,我不需要这样做(我需要构建它)

谢谢!

最佳答案

由于不必直接引用项目,您可以选择使用 Post Build 事件来复制 dll。基本上,您将两个项目保存在一个解决方案中(不要相互引用),并且您将 4.5 项目的 Post Build 事件配置为包含类似

copy /Y "source.dll" "destination"

这将确保您的 4.0 项目将要使用的 dll 在每次完整解决方案构建后始终是最新版本。

编辑:解决方案文件

Microsoft Visual Studio Solution File, Format Version 12.00

Visual Studio 14 VisualStudioVersion = 14.0.23107.0 MinimumVisualStudioVersion = 10.0.40219.1

Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Test", "Test\Test.csproj", "{F6B2FFFE-AEBD-4D47-99F6-B4EFD200E50A}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "test2", "test2\test2.csproj", "{AD7D893B-7113-4E96-8CC1-0321E576B2A2}"
EndProject

项目 1 目标:

<TargetFrameworkVersion>v4.5.2</TargetFrameworkVersion>

项目 2 目标:

<TargetFrameworkVersion>v4.0</TargetFrameworkVersion>

并构建解决方案

1>------ Rebuild All started: Project: Test, Configuration: Debug Any CPU ------
2>------ Rebuild All started: Project: test2, Configuration: Debug Any CPU ------
1> Test -> ------\Test.exe
2> test2 -> ------\test2.exe
========== Rebuild All: 2 succeeded, 0 failed, 0 skipped ==========

关于c# - 在构建 .NET 4.0 项目时自动构建 .NET 4.5 项目?它不需要被引用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32801279/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com