我们在Azure中托管了我们的ASP.Net网站。我写了一个连续的web作业来处理队列触发器中的一些后台文件。有时这个过程涉及从一个网址获取一个图像,并保存在我们网站的预定义文件夹中。Azure webjob如何访问托管站点文件夹
我们已经有了一个获取图像并保存到主站点代码中的文件夹的功能,所以我正在使用它。
在开发过程中,我手动运行.exe来检查触发器是否工作。一切都很好,直到图像上传过程。它不能将路径映射到给定的文件夹。代码如下,filepath
变量始终为空,所以我在此处收到异常并且作业失败。有一个更好的方法吗?这是因为我手动执行了这项工作,还是因为我错误地使用了一些功能?
public class MyHelper
{
public const string UPLOAD_URL = "/Uploads/";
// other functions
// ....
private static void GetFileLocation(string prefix, string imageName, out string fileUrl, out string saveLocation)
{
var filename = imageName;
// filepath is always null
var filePath = HostingEnvironment.MapPath(UPLOAD_URL);
fileUrl = Path.Combine(UPLOAD_URL, filename);
// this here throws the exception because filepath is null
saveLocation = Path.Combine(filePath, filename);
}
}
欣赏这方面的任何见解。谢谢!!
第一次使用'〜/ Uploads /',但是在测试dev时它不起作用。最后检查'filepath == null',如果null从硬编码的自定义设置路径计算路径...得到它的工作,但不知道这是一个好方法 – Tau
很高兴你得到它的工作。你可以尝试输出到日志或Webjob控制台进行调试吗? – lopezbertoni
您的检查路径的想法是有效的......从那时起没有麻烦。谢谢。 – Tau