当 Net Framework 引用 Net 标准库时,无法加载文件或程序集

2024-04-15

我对 netstandard 非常陌生,当我想运行引用 netstandard 库的 .Net Framework(控制台)调试模式时,我刚刚遇到异常。

所以我后来发现,如果我将 nuget 中的 System.IO.Ports 安装到 .Net Framework 项目上,异常就会消失。但这个库已经安装到 netstandard 项目中了。

因此,我非常怀疑如果我使用另一个 .net 框架项目中的网络标准项目,是否需要安装网络标准项目所需的所有库。

我一定错过了一些东西,任何熟悉 netstandard 的人都可以给我一些关于它的见解吗?

非常感谢您的投入!


打开托管 .Net 标准库的 .Net Framework 项目的 .csproj 文件,并在第一个文件中添加此行<PropertyGroup>像这样改变恢复风格:

<RestoreProjectStyle>PackageReference</RestoreProjectStyle>

看看这个article https://www.hanselman.com/blog/ReferencingNETStandardAssembliesFromBothNETCoreAndNETFramework.aspxScott Hanselman 介绍了问题的原因和修复方法。

来自文章:

“完整”框架项目使用较旧的 .csproj 格式,默认情况下,它们使用 package.config 来管理依赖项。较新的项目可以将包作为一流引用来引用。因此,我们需要告诉此解决方案中的所有项目将其包管理和恢复为“PackageReferences”。

EDIT:

这个修复对于我的新项目来说非常有效。当我在恢复新项目中的包之前将其应用到 csproj 时,nuget 会获得正确的引用。

当将此应用到现有项目时,它不起作用。 .net 标准类库中引用的库不是由 nuget 拉取的,因此,它仍然会抛出相同的错误。

要修复它,请尝试以下操作:

  1. 打开 csproj.你会注意到你的图书馆看起来像这样
<Reference Include="yournetstandardlibrary, Version=1.0.1.0, Culture=neutral, processorArchitecture=MSIL">
      <HintPath>..\packages\yournetstandardlibrary\lib\netstandard2.0\.dll</HintPath>
    </Reference>
  1. 删除该引用
  2. 添加此参考
 <ItemGroup>
     <PackageReference Include="yournetstandardlibrary">
       <Version>1.0.1</Version>
     </PackageReference>   
  </ItemGroup>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

当 Net Framework 引用 Net 标准库时,无法加载文件或程序集 的相关文章

随机推荐

  • Autobahn websockets Android 演示崩溃

    我是 websockets 的新手 我一直在使用 Autobahn websocket 来制作一个更大的项目 它在 python 和 js 版本中工作得很好 但我在 Android API 上遇到了麻烦 我正在遵循中的教程http www
  • 取消任务关闭窗口。如何检测任务是否同步返回?

    我遵循一种相当常见的模式 使用异步对话框方法确认 取消主窗口关闭 但是 在我调用来呈现对话框的异步任务中 在某些情况下我会立即返回布尔值 而不是等待对话框任务方法的返回 在这些情况下会抛出异常 System InvalidOperation
  • WPF/XAML:如何使 TextBlock 中的所有文本大写?

    我希望 TextBlock 中的所有字符都以大写形式显示
  • 无法使用 iframe 标签在 WebView 中播放视频?

    我正在使用以下数据来显示WebView 这些是 HTML 标签以及 指的是视频的 iframe 现在的问题是 当我点击它时 它显示播放按钮 但无法播放视频 我可以在里面播放这个视频吗WebView or not lt p gt lt p g
  • 反汇编中演示 volatile 的示例 C 代码?

    演示反汇编中易失性和非易失性之间差异的简短说明性 C 程序是什么 ie int main volatile int x vs int main int x 我们可以用什么来代替两者 这样生成的代码就不同了 例如 x 0 If x is no
  • 从原始 r 和 s 创建 DER 格式的 ECDSA 签名

    我有一个原始 ECDSA 签名 R 和 S 值 我需要 DER 编码版本的签名 有没有一种直接的方法可以使用 c 接口在 openssl 中执行此操作 我目前的尝试是使用i2d ECDSA SIG const ECDSA SIG sig u
  • 单选按钮选中更改事件触发两次

    请阅读我的问题 它不是重复的问题 我在 Windows 窗体上有三个单选按钮 所有这些按钮都具有关联的常见 CheckedChanged 事件 当我单击任何这些单选按钮时 它会触发 CheckedChanged 事件两次 这是我的代码 pr
  • 什么可能导致 ASP.NET 应用程序忘记用户?

    我有一个 ASP NET 应用程序 它似乎在一段时间后忘记了用户已登录 我正在使用会员资格提供商 当选择 记住 登录时 它会在会话期间记住它 我什至可以关闭浏览器 重新启动并返回 它仍然会登录 但过了一段时间它就会忘记 而且似乎在任何旧时间
  • 在 ASP.NET 3.5 中创建 RSS 源

    如何使用 C 在 ASP NET 3 5 中创建 RSS 提要 哪些框架部分可以帮助 NET 开发人员更轻松地发布 RSS 或 Atom 提要 NET 4 中是否有任何额外功能可以使此任务比 3 5 中更容易 3 5 中有一个新的命名空间
  • 如何限制拖动元素在interact.js中重叠

    容器中的拖动元素不应该重叠 我们如何限制 请帮忙 交互API链接 http interactjs io 抱歉 没有尽早回答这个问题 我相信你必须手动检查元素的顶部 底部 左侧和右侧边缘的位置 所以这就是我所做的 Call this func
  • matlab 数组中的 DICOM 维度(所有帧都以数组的最后一个维度结束)

    在我的 GUI 之一中 我加载 DICOM 图像 有时它们只是一个体积和另一个维度 当我将它们加载到 Matlab 中时 一切都会到达我想要的位置 handles inf dicominfo filepath filename handle
  • 对链接列表进行排序

    我用 C 编写了一个基本的链表类 它有一个 Node 对象 它 显然 代表列表中的每个节点 代码中没有使用IEnumerable 但是我可以实现排序功能吗 我使用的语言是C C 中有这样的例子吗 我正在从这个工作sample http ww
  • Python,在输出中将所有浮点数打印到小数点后两位

    我需要输出 4 个不同的浮点数到小数点后两位 这就是我所拥有的 print 2f var1 kg 2f var2 lb 2f var3 gal 2f var4 l 这是非常不干净的 而且看起来很糟糕 有没有办法让输出 2f 中出现任何浮动
  • 如何在 Swift 中创建一个空数组?

    我对如何在 Swift 中创建空数组感到非常困惑 您能否向我展示创建带有一些细节的空数组的不同方法 干得好 var yourArray String 上面的方法也适用于其他类型 而不仅仅是字符串 这只是一个例子 为其添加价值 我想您最终会想
  • app.dock.hide(); 的等效项是什么?

    我目前正在开发电子托盘应用程序 对于 Mac Electron 框架具有将应用程序隐藏在 Dock 中的功能 app dock hide 我尝试在 Windows 计算机上运行此程序并收到错误 TypeError Cannot read p
  • “内部联系”是什么意思?

    标准中写道 当名称具有内部链接时 它所表示的实体可以是 由同一翻译单元中其他范围的名称引用 and 具有命名空间范围 3 3 6 的名称具有内部链接 如果它是 变量 函数或函数模板的名称 显式声明为静态 所以考虑下面的代码 include
  • s3 存储桶中的 utf-8 文件名

    是否可以使用 utf 8 编码名称 如 jpg 向 s3 添加密钥 使用 boto 上传时出现以下错误
  • Python 请求:requests.exceptions.TooManyRedirects:超过 30 个重定向

    我试图使用 python requests 库抓取此页面 import requests from lxml import etree html url http www amazon in b ref sa menu mobile ele
  • 使用 MongoDB 有效确定层次结构中记录的所有者

    我正在努力实现以下目标 选择我拥有的所有记录 其中所有权是我创建的对象或我管理的用户创建的对象 其中用户管理可以在管理用户的用户层次结构中 所有权显然很简单 可以通过与所有者相对应的简单 ID 来处理 用户管理的层次结构让我有点难以执行 而
  • 当 Net Framework 引用 Net 标准库时,无法加载文件或程序集

    我对 netstandard 非常陌生 当我想运行引用 netstandard 库的 Net Framework 控制台 调试模式时 我刚刚遇到异常 所以我后来发现 如果我将 nuget 中的 System IO Ports 安装到 Net