VB.NET函数作为字符串,返回False是否为布尔值?

VB.NET函数作为字符串,返回False是否为布尔值?,vb.net,visual-studio-2010,function,httpwebrequest,Vb.net,Visual Studio 2010,Function,Httpwebrequest,我有一个HTTP类,它从URL获取内容,将POST的内容发送到URL等,然后返回原始HTML内容 在类内部的函数中,它检测是否存在HTTP错误,如果是,我希望返回false,但是如果我声明函数返回字符串,这是否有效 我尝试执行的代码示例(注意返回内容&如果检测到HTTP错误代码,则返回False) 和使用示例: Dim Content As String = Get_URL("http://www.google.com/") If Content = False Then Message

我有一个HTTP类,它从URL获取内容,将POST的内容发送到URL等,然后返回原始HTML内容

在类内部的函数中,它检测是否存在HTTP错误,如果是,我希望返回false,但是如果我声明函数返回字符串,这是否有效

我尝试执行的代码示例(注意返回内容&如果检测到HTTP错误代码,则返回False)

和使用示例:

Dim Content As String = Get_URL("http://www.google.com/")
If Content = False Then
    MessageBox.Show("A HTTP Error Occured: " & MyBase.HTTPError)
    Exit Sub
End If
Dim content As String = ""
Try
    content = Get_URL("http://www.google.com/")
Catch e As Exception
    MessageBox.Show(e.Message)
    Exit Sub
End Try

通常在这种类型的场景中,您会抛出一个包含更详细信息的新异常,并让异常冒泡到主代码处理的异常(或者让原始异常冒泡而不首先捕获它)

在使用示例中:

Dim Content As String = Get_URL("http://www.google.com/")
If Content = False Then
    MessageBox.Show("A HTTP Error Occured: " & MyBase.HTTPError)
    Exit Sub
End If
Dim content As String = ""
Try
    content = Get_URL("http://www.google.com/")
Catch e As Exception
    MessageBox.Show(e.Message)
    Exit Sub
End Try

通常在这种类型的场景中,您会抛出一个包含更详细信息的新异常,并让异常冒泡到主代码处理的异常(或者让原始异常冒泡而不首先捕获它)

在使用示例中:

Dim Content As String = Get_URL("http://www.google.com/")
If Content = False Then
    MessageBox.Show("A HTTP Error Occured: " & MyBase.HTTPError)
    Exit Sub
End If
Dim content As String = ""
Try
    content = Get_URL("http://www.google.com/")
Catch e As Exception
    MessageBox.Show(e.Message)
    Exit Sub
End Try

非常感谢你的帮助,这正是我想要做的。对VB来说仍然很陌生,但每天都在学习!是否会在函数中引发新异常?是否仍将运行结束尝试下面的返回内容?@Chris:它将立即中断函数,因此内容仍将设置为其原始值“”。更新:引发新异常还将显示一个messagebox,我在内部处理所有错误,并将它们记录到数据库中,因此不需要messagebox显示。有没有一种方法可以在不显示提示的情况下将异常返回到该行?您可以删除该行
MessageBox。Show
以静默方式退出该方法,同时仍然捕获/记录消息,并且不继续。lol,我自己在那里愚蠢地移动:-)再次感谢您的帮助:-)非常感谢您的帮助,这正是我想做的。对VB来说仍然很陌生,但每天都在学习!是否会在函数中引发新异常?是否仍将运行结束尝试下面的返回内容?@Chris:它将立即中断函数,因此内容仍将设置为其原始值“”。更新:引发新异常还将显示一个messagebox,我在内部处理所有错误,并将它们记录到数据库中,因此不需要messagebox显示。有没有一种方法可以在不显示提示的情况下将异常抛出到行中?您可以删除行
MessageBox。Show
以静默方式退出该方法,同时仍然捕获/记录消息并且不继续。lol,我自己在那里愚蠢地移动:-)再次感谢您的帮助:-)