发布到Azure应用服务

时间:2018-05-31 02:31:56

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

我在运行应用程序时突然看到此错误(在Azure应用服务上发布:

  

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

它在我的机器上运行正常,并且它在发布后运行正常,但现在它突然开始为这个文件丢失而哭泣。

我检查了Kudu,我只能看到SharePoint.Client.Runtime

enter image description here

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

2 个答案:

答案 0 :(得分:1)

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

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

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

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

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

3.在“属性”窗口中,将“本地复制”设置为“真实”。

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

答案 1 :(得分:0)

添加以下参数

  

/ deployonbuild = false

在msbuild命令行中解决了该问题。