.NET 4.0
与 2012
IIS 7
我有一个应用程序可以接收各个页面上的电子邮件地址,我发现用户正在直接复制/粘贴到一些输入中,并且它触发了标题中提到的错误,这是一个示例。
"blah blah" <blah@blah.com>
显然,括号引发了问题。我意识到我可以简单地将验证切换到 2.0,但我不想这样做,所以这是我的问题。
有没有办法让运行时做出更好的反应?当遇到这种情况时,它不会抛出一个超级可怕的页面,而是将其视为输入错误并向用户显示一条消息(在一般情况下)例如,在我所说的场景中,我可以显示一条错误消息关于电子邮件地址中不允许使用 < 和 >。我喜欢这种保护,但我不喜欢每次有人输入有潜在危险的输入时都会显示“oops”页面的想法。
如果我要放松验证:
- 我可以在每页的基础上做吗?我不相信,但我要求完整性
- ASP.NET 为我提供了哪些工具来手动保护自己免受此类问题的影响?我真的不想参与编写东西的游戏来查看输入中是否存在潜在危险的东西。