Если, ElseIf, OrElse синтаксис в VB.net - PullRequest
0 голосов
/ 21 апреля 2020

У меня путаница с синтаксисом VB. У меня есть это, если / else / if / elseif заявление, которое я имею в VB. Это работает, но, глядя вокруг, кажется, что это можно почистить. Я новичок в VB из C# фона, и я не совсем уверен, как правильно настроить его, чтобы очистить его. Ниже мой код:

                If taskPath = "\" Then
                    taskPath = Path.GetDirectoryName(TempFilePath)
                Else
                    If InStr(taskPath, "\\") = 1 Then
                    ElseIf InStr(taskPath, "\") = 1 Then
                        taskPath = Path.Combine(Path.GetDirectoryName(TempFilePath), Mid(taskPath, 2, Len(taskPath) - 1))
                    End If
                End If

Я бы хотел сказать:

If Foo then
   Bar
ElseIf Foo Then
    OrElse foo then
       bar
End If

За исключением случаев, когда я пытаюсь использовать этот тип синтаксиса, я получаю ошибки.

Я надеюсь, что это имеет смысл, но если нет, оставьте комментарий, и я постараюсь уточнить

1 Ответ

1 голос
/ 21 апреля 2020

Синтаксис должен быть таким:

If Foo then
   Bar
ElseIf Foo OrElse foo then
   bar
End If

С вашим реальным кодом это становится:

If taskPath = "\" Then
   taskPath = Path.GetDirectoryName(TempFilePath)
ElseIf InStr(taskPath, "\\") = 1 OrElse InStr(taskPath, "\") = 1 Then
   taskPath = Path.Combine(Path.GetDirectoryName(TempFilePath), d(taskPath, 2, Len(taskPath) - 1))
End If
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...