我正在尝试建立2个不同的框架相同的项目。
如果相关,为什么:因为我需要在.netcore项目和.netframework项目中将我的项目用作引用,所以它必须与这两个项目兼容,以避免重复代码。
我认为拥有构建配置是可行的,但是配置管理器在添加框架构建配置时会出现错误,说明配置是错误的。
我的csproj如下所示
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">netcore</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<TargetFramework>net5.0</TargetFramework>
</PropertyGroup>
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">netframework</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<TargetFrameworkVersion>v4.5.1</TargetFrameworkVersion>
</PropertyGroup>
</Project>但它不起作用,我对下一步的原因或下一步会是什么感到困惑。
有什么线索吗?
发布于 2021-09-15 11:36:41
您的csproj看起来真的很困惑。例如,不清楚为什么通常是Debug或Release的Configuration有一个netcore或netframework选项。
如果您想为多个目标框架构建,请使用单个TargetFrameworks元素,例如
<TargetFrameworks>net5.0;net451</TargetFrameworks>如果使用TargetFrameworks,请不要同时使用TargetFramework。
发布于 2021-09-15 11:39:27
您可以使用.NET标准项目。并从上面提到的两个项目中引用它。你可以在这里找到更多信息:.NET Standard
引用微软自己的话:
我们建议您使用.NET标准2.0,除非您需要支持更早的版本。大多数通用库不应该需要.NET标准2.0之外的API。所有现代平台都支持.NET标准2.0,这是通过一个目标支持多个平台的推荐方式。
https://stackoverflow.com/questions/69192346
复制相似问题