我创建了一个小项目,可以很好地上传到Azure作为WebJob。然后我添加了一个NuGet引用到MailKit,以便它发送电子邮件。从我的电脑,这工作正常,并发送电子邮件。
当我上传启用电子邮件的项目时,发生以下错误
[05/31/2018 14:04:05 > c30776: ERR ] An assembly specified in the application dependencies manifest (myProject.deps.json) was not found:
[05/31/2018 14:04:05 > c30776: ERR ] package: 'MailKit', version: '2.0.4'
[05/31/2018 14:04:05 > c30776: ERR ] path: 'lib/netstandard2.0/MailKit.dll'
我猜测是因为Azure服务器上没有安装/提供MailKit NuGet包。如何在Azure WebJob中引用MailKit?我是否应该在Azure中的其他位置添加包引用,还是需要引用MailKit的中心实例?
答案 0 :(得分:0)
您似乎缺少MailKit参考。因此,您可以使用<PropertyGroup>
文件中的.csproj
强制将NuGet程序集复制到构建的输出:
<CopyLocalLockFileAssemblies>true</CopyLocalLockFileAssemblies>
有关详细信息,请参阅此article。
此外,您可以在发布到azure和upload the zip folder to azure时将netcore控制台发布到文件夹。它可以包含您需要的所有引用和json文件。
然后将整个文件夹放到zip文件夹中,然后上传到azure作为webjobs。