获取运行的应用程序的VB.NET相对上载路径



我发现了我的麻烦点,我想这可能只是因为我在本地主机上运行应用程序,但我觉得我不能安全地部署到下一层进行测试。

我有一个Telerik RadAsyncUpload控件,它有一个TargetFolder="Upload",并且一直假设它会使用应用程序中的\Upload文件夹。

是否有一种方法可以强制路径在应用程序内部

lsFullFileName = HttpContext.Current.Server.MapPath(fuUploadFile.TargetFolder) 
                 + "" + Path.GetFileName(lsFileName)

这是在VB.net中。文件最终位于"C:\Upload"(我创建它是为了查看发生了什么),但文件应该从App_Data中的临时位置移动到"C:\applicationName\applicationName\Upload"

ASPX-

<telerik:RadAsyncUpload 
    runat="server"
    ID="fuUploadFile"
    MaxFileSize="262144000" 
    OnClientFileUploaded="OnClientFileUploaded" 
    InputSize="50"
    TargetFolder="Upload" 
    AllowedFileExtensions=".wav,.mp3,.mpeg,.mpg,.wmv,.avi,.mp4">
</telerik:RadAsyncUpload>

谢谢。

如果您坚持将上传目录保留在站点文件夹中,则可以使用类似~Upload的路径,该路径将强制从web应用程序根目录开始。

然而,正如Bartdude概述的那样,这通常是一个坏主意。

试试这个:

uploadPath As String = AppDomain.CurrentDomain.BaseDirectory & "Upload"

最新更新