我是web开发的新手(虽然对WinForms开发来说不是新手),我想知道在客户端和服务器端处理错误的正确和有效的方法。
例如,用户输入了错误的邮政编码(使用字母),我想通知用户输入了错误的邮政编码,我该如何处理?
我假设这应该是在客户端,但是有人能给我展示一个示例代码吗?您应该使用哪种脚本语言?您是否应该在屏幕上显示一条消息?您是否应该使错误消息可见?执行此操作的标准方法是什么?
示例二:用户单击在服务器数据库中运行查询的内容。出现错误。如何将错误通知给用户?
通常,在Win表单中,我可以这样做:
try
{
CreateDirectoriesAndSystemFiles();
}
catch (Exception ex)
{
ErrorLogger.LogError(ex.Source, ex.TargetSite.ToString(), "Error creating directories!; " + ex.Message);
MessageBox.Show(ex.Message, "Error creating directories!", MessageBoxButtons.OK, MessageBoxIcon.Error);
return;
}我怎样才能在web环境中模仿上面的场景呢?
发布于 2012-09-14 03:31:52
1对于客户端通知,您可以使用验证器
链接:http://msdn.microsoft.com/en-us/library/system.web.ui.webcontrols.requiredfieldvalidator.aspx
此链接是关于RequiredFieldValidator的
你还有CompareValidator, CustomValidator等..。
链接:http://msdn.microsoft.com/en-us/library/ms972961.aspx
这是一个很好的解决方案。
2对于处理异常,可以使用Global.asax和Applicatio_Error
链接:http://msdn.microsoft.com/en-us/library/24395wz3%28v=vs.100%29.aspx
发布于 2012-09-14 03:36:30
大多数人使用jQuery validate是因为它非常容易使用,同时又非常强大和灵活。文档在这里,http://docs.jquery.com/Plugins/Validation。Microsoft默认将它们包含在MVC3和MVC4中,并将其用于模型验证客户端,因此,如果您使用MS stack和MVC,这是使用它的另一个很好的理由。在Web Forms中,事情变得有点不同,因为你倾向于使用内置的验证控件来处理客户端和服务器端的开箱即用引用,这里的http://msdn.microsoft.com/en-us/library/a0z2h4sw(v=vs.100).aspx -这些控件是通过自定义验证器类型来解释的,这些类型允许你指定你自己编写的服务器端和客户端方法来处理定制的功能。希望这能有所帮助!
发布于 2012-09-14 03:33:23
asp.net可以对服务器端错误执行相同的try/catch处理。
至于输入验证,您应该研究一下Asp.net Input Validation Controls
https://stackoverflow.com/questions/12413453
复制相似问题