asp.net – 当HTTPContext .Current为Nothing时如何使用Server.MapPath

前端之家收集整理的这篇文章主要介绍了asp.net – 当HTTPContext .Current为Nothing时如何使用Server.MapPath前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
当我需要从Web服务器上的目录中删除一些图像文件时,我有一些代码可以正常工作:
Dim ImageURL As String = dsImages.Tables(0).Rows(iImgRow).Item("ImageURL")
Dim physicalName = Server.MapPath(ImageURL)
oUpload.DeleteFileFromServer(physicalName,iAdid,iImgID)

..但是当一个维护任务在一个单独的线程中以设置的间隔运行时,我遇到了一个问题,确定需要删除如上所述的文件

Dim ImageURL As String = dsImage.Tables(0).Rows(i - 1).Item("ImageURL")
Dim iImgID As Integer = dsImage.Tables(0).Rows(i - 1).Item("ImageId")
Dim physicalName As String = HttpContext.Current.Server.MapPath(ImageURL)
oUpload.DeleteFileFromServer(physicalName,iAdID,iImgID)

在后一种情况下,HttpContext.Current.Server.MapPath(ImageURL)的值为Nothing.

有没有办法得到这个案件的完整路径?

解决方法

假设路径是相对的,则单独的进程不知道它们是相对于哪个Web应用程序.在这种情况下,您将需要将其存储在配置中,并将两者附加在一起,或在〜/

猜你在找的asp.Net相关文章