无法加载文件或程序集'Microsoft.AI.Web'或其某个依赖项。系统找不到指定的文件。

42

成功将我的 Web Api 发布到 Azure 后,当我尝试调用该 API 时,出现了以下错误。

这里是一个链接到 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]


可能是重复的问题:无法加载文件或程序集'Microsoft.Web.Infrastructure - evgenyl
5个回答

94

我通过以下方法解决了这个问题:

Install-Package Microsoft.ApplicationInsights.Web

仅为Web/API项目安装Application Insights:

Install-Package Microsoft.ApplicationInsights.Web YourProjectName

要运行这些命令,在Visual Studio中打开包管理器,方法是点击:工具 -> NuGet程序包管理器 -> 包管理器控制台


更好的答案是,如果您没有使用ApplicationInsights,则从配置文件中删除ApplicationInsights。 - Imran Qadir Baksh - Baloch

5
使用“管理 NuGet 包”我尝试安装 Microsoft.ApplicationInsights.Web。但是它已经安装过了。我选择了“更新”。在重新构建应用程序后,错误消失了。

1
这对我有用!ApplicationInsights.Web没有安装,所以我通过NuGet安装了它。自动添加了所有引用。重构、运行,错误消失了。 - dlchambers

3

我已经复现了这个问题。以下是我的复现过程:

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

这是Web API的工作截图:enter image description here 然后我打开KUDU工具,删除Bin文件夹中的Microsoft.AI.Web,并重新运行网站。我与您遇到了同样的错误,如下所示:enter image description here 因此,我可以确定这个错误是由于缺少程序集Microsoft.AI.Web引起的。请将复制属性设置为true,如下截图所示,然后重新部署到Azure Web应用程序中:enter image description here

1

请查看此答案

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

这里是一个已经在Stack上讨论过类似问题的链接:MVC3部署依赖问题


0

关于“Install-Package Microsoft.ApplicationInsights.Web”的所有答案都没有直接解决我的问题。我的Web应用程序项目无法接受安装该包(在几分钟后回滚)。

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


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接