【问题标题】:Could not load file or assembly after publishing to Azure app service发布到 Azure 应用服务后无法加载文件或程序集
【发布时间】:2018-11-09 23:10:54
【问题描述】:

我在运行我的应用时突然看到这个错误(发布在 Azure 应用服务上:

无法加载文件或程序集“Microsoft.SharePoint.Client, Version=16.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c”或其依赖项之一。该系统找不到指定的文件。在 SharePointLibrary.SPClient.GetAllUsers() 在 C:\Users\bassie\source\repos\TFS\ADVWKSP\ADVWKSP\Managers\UserManager.cs:line 21 中的 ADVWKSP.Managers.UserManager.GetUsers() 处

它在我的机器上运行良好,以前在发布后运行良好,但现在它突然开始为这个文件丢失而哭泣。

我签入了 Kudu,我只能看到SharePoint.Client.Runtime

为什么?如何确保所有必需的库都与项目一起发布。为什么这突然停止工作?

【问题讨论】:

    标签: c# asp.net-mvc azure sharepoint azure-app-service-envrmnt


    【解决方案1】:

    添加如下参数

    /deployonbuild=false

    到 msbuild 命令行修复了这个问题。

    【讨论】:

    • 您好,您能否为您的答案添加一些上下文?也许是实现这一目标的步骤。
    • @ConnorLow 哦,这是很久以前的事了。让我们看看我是否还记得。在部署项目时,我在部署管道中使用了 msbuild。它给出了上述错误。当我将参数 /deployonbuild=false 添加到 msbuild 命令行时,错误消失并且项目正常工作。
    【解决方案2】:

    azure web 应用的托管环境包含.Net framework 2.0.Net framework 4.5 的标准安装。

    如果您的应用程序引用了不是在 .Net 框架中构建的程序集,您必须"include" them with your deploy package。 甚至这些都是 Microsoft 程序集。

    将引用的程序集的 Copy Local 属性设置为 True 可能会修复它。

    1.在解决方案资源管理器中找到您的项目对库的引用。

    2.右键单击并选择属性。

    3.在属性窗口中将Copy Local设置为True。

    如您所说,它在 IIS Express 上本地运行,请尝试手动将您的网站内容部署到 Azure via KUDU or FTP client 并查看它是否有效。

    【讨论】:

      猜你喜欢
      • 2016-03-29
      • 2013-12-17
      • 1970-01-01
      • 1970-01-01
      • 2013-01-29
      • 1970-01-01
      • 2014-09-02
      • 1970-01-01
      • 2023-03-25
      相关资源
      最近更新 更多