发布到Azure应用服务后无法加载文件或程序集

2ledvvac  于 2023-01-18  发布在  其他
关注(0)|答案(3)|浏览(134)

我在运行应用时突然看到此错误(发布在Azure应用服务上:
未能加载文件或程序集“Microsoft.SharePoint.Client,版本=16.0.0.0,区域性=中性,公钥令牌=71e9bce111e9429c”或它的某个依赖项。系统在C:\Users\bassie\source\repos\TFS\ADVWKSP\ADVWKSP\Managers\UserManager.cs中的ADVWKSP.Managers. UserManager.GetUsers()的SharePointLibrary.SPClient.GetAllUsers()处找不到指定的文件。“
它在我的机器上运行良好,发布后它曾经运行良好,但现在它只是突然开始为这个文件丢失而哭泣。
我在Kudu登记入住,只能看到SharePoint.Client.Runtime

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

wpx232ag

wpx232ag1#

azure web app的托管环境包含.Net framework 2.0.Net framework 4.5的标准安装。
如果你的应用程序引用的程序集不是在.Net framework中构建的,你必须"include" them with your deploy package。即使这些程序集是微软的程序集。
将引用程序集的“复制本地”属性设置为True可能会修复该问题。
1.在解决方案资源管理器中找到项目对库的引用。
2.右键单击并选择属性。
3.在“属性”窗口中,将“复制本地”设置为True。
正如您所说,它在IIS Express上本地工作,请尝试手动将您的网站内容部署到Azure via KUDU or FTP client,并查看它是否工作。

o8x7eapl

o8x7eapl2#

添加以下参数
/部署构建=假
到msbuild命令行修复了该问题。

huus2vyu

huus2vyu3#

当我的应用程序服务函数版本为3时,我遇到了类似的问题,但函数源是针对函数版本4的。更新应用程序服务解决了该问题

相关问题