首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >ASP .NET核心找不到具有自定义程序集的文件或程序集。

ASP .NET核心找不到具有自定义程序集的文件或程序集。
EN

Stack Overflow用户
提问于 2017-05-14 17:08:56
回答 2查看 19.2K关注 0票数 23

我遇到了一个奇怪的问题。

我基本上有我自己的.NET核心的网络栈,我已经构建了一些.dlls,我想从另一个ASP核心解决方案中引用这些内容。

VS似乎找到了程序集,在其中我可以导航类型等。我也可以构建项目,没有任何问题,但是当IIS运行服务器时,我会得到一个内部服务器错误声明:

FileNotFoundException:无法加载文件或程序集'myDLL,Version=1.0.0.0,Culture=neutral,PublicKeyToken=null‘。系统找不到指定的文件。

引用的DLL位于调试文件夹中,真正奇怪的是,如果我在与web堆栈相同的解决方案中创建一个新的ASP Core项目,我可以引用并使用它,而不会出现任何问题。

为什么只有在web堆栈解决方案之外的项目上运行时才会发生这种情况,我能做些什么使它在任何地方都能运行呢?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2017-05-14 17:23:42

VS 2017中的.NET核心工具(< 15.3预览)/ .NET CLI < 2.0并不完全支持在磁盘上引用程序集。您需要将库打包为NuGet包或使用项目引用(“相同的解决方案”)。技术原因是,所有必需的程序集和版本都在编译期间得到解析,并写入.deps.json文件。加载任意程序集时,这可能会失败,因为无法找到程序集或其依赖项(或相互冲突)。

票数 35
EN

Stack Overflow用户

发布于 2019-07-01 03:36:12

要在external dll项目中加载core,需要:

  1. vs 2017版本15.3或更高。
  2. 安装在项目中的Microsoft.Extensions.DependencyModel NuGet包。
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/43966687

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档