繁体   English   中英

“System.Object”类型在未引用的程序集中定义。 您必须添加对程序集 .netstandard 的引用

[英]The type 'System.Object' is defined in an assembly that is not referenced. You must add a reference to assembly 'netstandard

我已经创建了一个 .NET 标准库 (2.0),它正在调用一个 web 服务(在 .NET 框架中编写)。 当我调用 web 服务的方法时,出现以下错误。

Unable to generate a temporary class (result=1).
error CS0012: The type 'System.Object' is defined in an assembly that is not referenced. You must add a reference to assembly 'netstandard, Version=2.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51'.
error CS0012: The type 'System.Enum' is defined in an assembly that is not referenced. You must add a reference to assembly 'netstandard, Version=2.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51'.

我正在使用 VS 2019 Enterprise(版本 16.4.0)。

如果您可以控制 .netstandard 项目 - 使其多目标化以解决问题

<PropertyGroup>
    <TargetFrameworks>netstandard2.0;net471</TargetFrameworks>
</PropertyGroup>

我混合了 .Net 4.7.1 和 .netstandard 2.0 项目 - 两者的混合类序列化失败并出现上述错误。 经过长时间的调查和不幸的解决方法后,我发现该线程揭示了根本原因。 微软将其关闭为“不会修复,使用多目标” https://github.com/do.net/runtime/issues/21373

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM