Метод SaveAs настроен так, чтобы требовать корневого пути - помогите понять существующий блок кода
Я написал функцию для загрузки данных из таблицы 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
2 ответа
Из моего понимания:
' 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" и сохраните файл в
Но на самом деле, просто пошагово пройдитесь по коду с помощью отладчика и посмотрите, что делает