c# - try catch 中抛出的异常
问题描述
我有一个功能来检查输入的电子邮件是否有效:
bool IsValidEmail(string email)
{
try
{
var addr = new System.Net.Mail.MailAddress(email);
return addr.Address == email;
}
catch (Exception ex)
{
System.Diagnostics.Debug.WriteLine(ex.Message);
return false;
}
}
即使它在尝试/捕获中,当输入无效的电子邮件时,我仍然会收到异常,说明:
'指定的字符串不是电子邮件地址所需的格式。'
我在其他应用程序中使用过这个功能,它工作正常。不知道现在发生了什么。
编辑:解决方案是我的异常设置,我的 VS 忽略了 try/catch
解决方案
catch (Exception ex)
无法捕获所有异常。只有托管的。
您可以使用不带类型的 catch:
catch
{
return false;
}
不确定这是否是一个好点。您无法Environment.FailFast
在 MailAddress 的构造函数中处理诸如 call 之类的事情
无论如何,看起来你的问题不存在。
如果您需要更多帮助,请添加异常的堆栈跟踪。
推荐阅读
- selenium - 在 Selenium 中单击按钮没有响应
- autohotkey - 使用 AutoHotKey 防止物理按键与发送的按键发生冲突
- r - 带函数的 for 循环(来自 r 包)问题
- javascript - React 功能组件未使用新道具更新
- node.js - 如何优化 dijsktra 寻路查询以提高速度
- html - 需要完整日历的解决方案,其中包含事件列表和特定事件页面的链接
- java - 员工类:无法解析 EmployeeMain 中的符号
- sql - Oracle SQL 动态开始和结束日期
- javascript - Chartjs 用 csv 显示图形
- javascript - 为什么显示 ,Uncaught TypeError: $(...).tableHTMLExport is not a function