无法加载文件或程序集“Microsoft.AI.Web”或其依赖项之一。该系统找不到指定的文件

Posted

技术标签:

【中文标题】无法加载文件或程序集“Microsoft.AI.Web”或其依赖项之一。该系统找不到指定的文件【英文标题】:Could not load file or assembly 'Microsoft.AI.Web' or one of its dependencies. The system cannot find the file specified 【发布时间】:2016-12-15 06:29:08 【问题描述】:

成功将我的 Web Api 发布到 Azure 后,当我尝试点击 api 时,我收到以下错误。

这里是a link to api

WRN: Assembly binding logging is turned OFF.
To enable assembly bind failure logging, set the registry value
[HKLM\Software\Microsoft\Fusion!EnableLog] (DWORD) to 1.

注意:程序集绑定失败日志记录会带来一些性能损失。 要关闭此功能,请删除注册表值 [HKLM\Software\Microsoft\Fusion!EnableLog]

【问题讨论】:

Could not load file or assembly 'Microsoft.Web.Infrastructure,的可能重复 【参考方案1】:

请检查this answer:

您需要将 dll 包含在您的项目中并添加对它的引用 也是。

这里是 Stack 上已有类似问题的链接:MVC3 Deployment Dependency Problems

【讨论】:

【参考方案2】:

我已经重现了这种类型的问题。这是我的重现过程:

1) Create web App api with Microsoft.ApplicationInsights.Web installed.
2) Then deploy the App to Azure Web app.

这是 Web API 的工作截图:

然后我打开KUDU工具,删除Bin文件夹中的Microsoft.AI.Web,重新运行站点。我也遇到了同样的错误,截图如下:

所以我可以确定,这个错误是由缺少 Microsoft.AI.Web 程序集引起的。请将本地复制设置为 true,如下图所示,然后重新部署到 Azure Web App:

【讨论】:

【参考方案3】:

我通过这样做解决了这个问题:

Install-Package Microsoft.ApplicationInsights.Web

仅将 Application Insights 安装到 Web/API 项目:

Install-Package Microsoft.ApplicationInsights.Web YourProjectName

要运行这些命令,请在 Visual Studio 中通过单击打开包管理器:工具 -> NuGet 包管理器 -> 包管理器控制台

【讨论】:

如果您不使用 ApplicationInsights,更好的答案是从配置文件中删除 ApplicationInsights【参考方案4】:

使用“管理 NuGet 包”我厌倦了安装 Microsoft.ApplicationInsights.Web。它已经安装好了。我给了一个“更新”。重建应用程序后,错误消失了。

【讨论】:

这对我有用! ApplicationInsights.Web 没有安装,所以我通过 NuGet 安装。自动添加所有引用。重新构建,运行,错误消失了。【参考方案5】:

关于“Install-Package Microsoft.ApplicationInsights.Web”的所有答案都没有直接解决我的错误。我的 WebApplication-Project 不接受安装包(安装几分钟后回滚)。

然后我尝试将 Microsoft.ApplicationInsights.Web 的 NuGetPacke 添加到我的 WebApplication 使用的库项目中。这也将 AI.Web-DLL 添加到我的 WebApplication 并解决了问题。

【讨论】:

以上是关于无法加载文件或程序集“Microsoft.AI.Web”或其依赖项之一。该系统找不到指定的文件的主要内容,如果未能解决你的问题,请参考以下文章

无法加载文件或程序集 'PayPalAdaptivePaymentsSDK,版本 = 2.12.117.0

无法加载文件或程序集。找到的程序集的清单定义与程序集引用不匹配

无法加载文件或程序集'netstandard,版本 = 2.0.0.0

无法加载文件或程序集 此处的程序集名称 或其依赖项之一。访问被拒绝

无法加载文件或程序集或其依赖项之一

寻找解决策略:无法加载文件或程序集[重复]