当前位置:  开发笔记 > 编程语言 > 正文

捕获特定的WebException(550)

如何解决《捕获特定的WebException(550)》经验,为你挑选了1个好方法。

假设我创建并执行了一个System.Net.FtpWebRequest.

我可以catch (WebException ex) {}用来捕获此请求引发的任何与Web相关的异常.但是,如果我有一些逻辑,我只想在抛出异常时执行(550) file not found

最好的方法是什么?我可以复制异常消息并测试相等性:

const string fileNotFoundExceptionMessage =
    "The remote server returned an error: (550) File unavailable (e.g., file not found, no access).";
if (ex.Message == fileNotFoundExceptionMessage) {

但从理论上讲,这条消息似乎可能会改变.

或者,我可以测试一下异常消息是否包含"550".如果消息被更改,这种方法可能更有效(它可能在文本中的某处仍然包含"550").但是,如果其他一些文本WebException碰巧包含"550",那么这样的测试当然也会返回.

似乎没有一种方法可以只访问异常的数量.这可能吗?



1> Andrew Hare..:

WebException公开StatusCode您可以检查的财产.

如果你想要实际的HTTP响应代码,你可以这样做:

(int)((HttpWebResponse)ex.Response).StatusCode

推荐阅读
小色米虫_524
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有