You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

从.NET Core 2.0控制台应用调用.NET Standard 2.0类库时遇SendGrid DLL加载错误

解决.NET Core 2.0控制台引用.NET Standard 2.0类库时找不到SendGrid程序集的问题

这种情况我之前处理过好几次,问题根源其实很明确——你直接引用类库DLL的方式,没办法自动传递类库的NuGet依赖。当你手动添加DLL引用时,控制台项目不会自动获取类库依赖的SendGrid包,所以运行时就会出现找不到程序集的错误。

给你几个可行的解决办法:

  • 换成项目引用(最推荐)
    别再直接加DLL了,在控制台项目的「依赖项」上右键,选择「添加项目引用」,然后选中你的.NET Standard 2.0类库项目。这样NuGet会自动把类库的所有依赖(包括指定版本的SendGrid)同步到控制台项目里,编译和运行时就能正常找到需要的程序集了。

  • 手动给控制台项目安装对应版本的SendGrid NuGet包
    如果你暂时不想调整引用方式,可以打开控制台项目的NuGet包管理器,搜索并安装和类库中版本一致的SendGrid包(也就是Version=9.8.0.0这个版本)。安装完成后,控制台项目里就有了SendGrid的程序集,运行时就不会再报找不到文件的错误。

  • 检查类库输出目录的依赖文件
    确认你的类库编译后,SendGrid的DLL是否和类库DLL在同一个输出目录下。如果不在,你需要手动把SendGrid的DLL复制到控制台项目的输出目录里,但这种方法比较繁琐,后续更新依赖时容易出问题,不太推荐。

另外提醒一句:.NET Core生态里,项目引用和NuGet包管理是更规范的依赖管理方式,直接引用DLL很容易出现这类依赖缺失的问题,尤其是跨项目协作的时候。

内容的提问来源于stack exchange,提问作者Shawn

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.21 04:34:20