C# .net标准2.0类库在添加引用时产生错误
创建了一个.net标准2.0类库,然后将其用于以.netframework 4.6.1和dot net core 2.1为目标创建的控制台应用程序中。运行web应用程序时引发了blow异常 无法加载文件或程序集“ChoETL.JSON.Core,版本=1.1.0.5,区域性=中立,PublicKeyToken=null”。系统找不到指定的文件 我在.net核心web应用程序中使用项目引用测试了同一个库,并没有出现错误。当尝试使用已发布的DLL时,它会在核心和框架应用程序中显示错误 Dotnet标准类库项目文件为C# .net标准2.0类库在添加引用时产生错误,c#,.net,.net-standard,class-library,C#,.net,.net Standard,Class Library,创建了一个.net标准2.0类库,然后将其用于以.netframework 4.6.1和dot net core 2.1为目标创建的控制台应用程序中。运行web应用程序时引发了blow异常 无法加载文件或程序集“ChoETL.JSON.Core,版本=1.1.0.5,区域性=中立,PublicKeyToken=null”。系统找不到指定的文件 我在.net核心web应用程序中使用项目引用测试了同一个库,并没有出现错误。当尝试使用已发布的DLL时,它会在核心和框架应用程序中显示错误 Dotnet标
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>netstandard2.0</TargetFramework>
<RestoreProjectStyle>PackageReference</RestoreProjectStyle>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="ChoETL.JSON.NETStandard" Version="1.1.0.5-beta3" />
<PackageReference Include="ChoETL.NETStandard" Version="1.1.0.5-beta3" />
<PackageReference Include="Newtonsoft.Json" Version="12.0.3" />
</ItemGroup>
</Project>
netstandard2.0
包装参考
早期添加项目引用时为.netframework 4.6.1,它显示相同的错误,然后在属性组(项目文件)中添加以下设置,它将消失
<DependsOnNETStandard>true</DependsOnNETStandard>
<RestoreProjectStyle>PackageReference</RestoreProjectStyle>
<AutoGenerateBindingRedirects>true</AutoGenerateBindingRedirects>
true
包装参考
真的
是否有合适的方法发布dotnet标准库,使其既能运行.netframework 4.6.1又能运行.netframework 2.1这应该作为一个可传递的依赖项来使用(您甚至不需要ChoETL.NETStandard依赖项,因为ChoETL.JSON.NETStandard应该以可传递的方式添加它);您在.NET Framework项目中使用的构建工具是什么?注:4.6.1有点不可靠。。。加载程序在那里尤其糟糕,但坦率地说,使用.NET标准的.NET Framework存在很多问题;在.NET Framework 4.7.2和4.8中,情况变得更好了,但特别是:“我使用的是针对net461的旧版本Visual Studio和旧式cspoj”,与“我使用的是最新的Visual Studio/.NET核心命令行工具,以及针对net461的新型csproj”之间有很大区别。我删除了ChoETL.NETStandard依赖项,还是同样的错误