HttpWebRequest.GetResponseで例外が出てもレスポンスを読む方法

.NETのHttpWebRequest.GetResponseでステータスコードが4xxの場合にエンティティボディを取得する | Pistolfly

ここを参考にしました

        Dim content As String = Nothing
        Dim response As HttpWebResponse
     

        Try
            Dim request = DirectCast(GetWebRequest(uri), HttpWebRequest)
            response = request.GetResponse
        Catch ex As WebException
            response = ex.Response
        End Try


        Using reader = New System.IO.StreamReader(response.GetResponseStream)
            content = reader.ReadToEnd
        End Using