SaveAs 方法配置为需要根路径——有助于理解现有代码块

SaveAs method is configured to require a rooted path -- help understanding existing code block

我编写了一个函数,用于将数据从 excel 电子表格上传到表单。从我的电脑测试成功。我将我的 vb.net 代码迁移到了开发服务器,现在我收到了根路径消息。

我的代码可以与其他人编写的现有代码一起使用。我不太明白它到底在做什么,因为没有评论而且我是编程新手。

我的想法是代码的第一部分是寻找用户提交的文件的路径(IF 部分),而代码的第二部分(在 ELSE 部分)是——实际上不太确定因为代码似乎是多余的。我知道我们在服务器上有一个临时文件夹。了解代码的作用会很有帮助,这样我就可以弄清楚服务器路径的放置位置。有人可以评论代码以帮助我理解吗?

If WebPath.Contains("localhost") Then
    FilePath = Path.Combine("c:\open", FileName)
    FileUpload1.SaveAs(FilePath)
Else
    Dim FolderPath As String = ConfigurationManager.AppSettings("FolderPath")
    FilePath = FolderPath & FileName
    FileUpload1.SaveAs(FilePath)
End If

据我了解:

' localhost usually refers to development environment
If WebPath.Contains("localhost") Then
    FilePath = Path.Combine("c:\open", FileName)
    FileUpload1.SaveAs(FilePath)
' So if it is not localhost, the code will goes here
Else
    ' The code is trying to grab the FolderPath value from the .config file
    ' For example: web.config file
    ' Here is the example of how it may looks inside the web.config file
    ' <?xml version="1.0" encoding="utf-8" ?>
    '  <configuration>
    '   <appSettings>
    '    <add key="FolderPath" value="filepath"/>
    '   </appSettings>
    '  </configuration>
    ' So, if you want to change the location, change the "filepath" value in the web.config file
    Dim FolderPath As String = ConfigurationManager.AppSettings("FolderPath")
    ' Also use Path.Combine over here
    FilePath = Path.Combine(FolderPath,FileName)
    FileUpload1.SaveAs(FilePath)
End If

两个输入,WebPath 和 FileName

WebPath 中的任何位置都包含单词 "localhost" 然后将文件保存到 "c:\open\"

否则从应用程序配置设置 "FolderPath" 中读取文件夹名称并将文件存储在

实际上,只需使用调试器单步执行代码,看看有什么作用