NETC开发中的常见经典问题汇总问.doc


文档分类:管理/人力资源 | 页数:约177页 举报非法文档有奖
1/177
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/177
文档列表 文档介绍
NET(C)开发中的常见经典问题汇总(问)————————————————————————————————作者:————————————————————————————————日期: Q1:在验证发生前无法调用””中,为了方便表单的验证,提供了验证控件来完成表单输入数据的验证。这些验证控件确实是功能强大,为写表单程序提供了极大的便利。但是,在不熟悉的情况下,经常碰到问题。其中,最常见的是遇到错误:。这个问题我认为是很多朋友受了《》这本书。这本书在网友间流传甚广,也确实是一本不错的入门书,但是错误也有一些,比如这里。在该书论述到验证组件的时候,演示RequiredFieldValidator的用法时,有这样一个程序::<%***@PageLanguage="C#"%><ScriptLanguage="C#"Runat="Server">protectedvoidPage_Load(objectsender,EventArgse){if(){if(){="已经通过验证";}else{="没有通过验证";}}}</script><html><head><title></title></head><body><formrunat="server"><table><tr><tdcolspan=2align="center"><b>RequiredFieldValidator控件演示</b></td></tr><tr><td>姓名:</td><td><asp:TextBoxid="name"runat="server"/>*<asp:RequiredFieldValidatorid="rfv1"runat="server"ControlToValidate="name"Display="Static">(请填写姓名)</asp:RequiredFieldValidator></td></tr><tr><td>年龄:</td><td><asp:TextBoxid="age"runat="server"/>*<asp:RequiredFieldValidatorid="rfv2"runat="server"ControlToValidate="age"Display="Static">(请填写年龄)</asp:RequiredFieldValidator></td></tr><tr><td><asp:ButtonText="提交"runat="server"/></td><td></td></tr></table><hr><asp:Labelid="show"ForeColor="red"runat="server"/></form></body></html>运行这个程序,就发生了错误:。应在控件的事件处理程序中使用CausesValidation=。这个问题的发生来自作者的一个小疏忽。其实,在点击提交按钮时,程序先进行了验证,验证通过后才会和服务器交互(这里是重新加载,调用了Page_Load)。问题的根源是对于asp:Button控件,点击的时候是默认先进行表单的验证的。有的朋友希望在表单里有两个按钮,其中有的按钮执行的操作和表单本身无关,不需要验证,但也默认必须进行验证,对程序设计上造成不少烦恼。其实,这个问题很好解决。Button控件有一个属性CauseValidation,默认是true。只需要将此属性设为false,就不会引发表单验证了。需要验证的时候,可以手工调用验证代码:()()进行验证。Q2:,Request时出现有HTML或Javascript等字符串时,系统会认为是危险性值。立马报错上面的错误。解决办法:解决方案一:  :  <%@ PagevalidateRequest="false" %>  ,添加代码<httpRuntime requestValidationMode="" />: 即<configuration>    <>      <httpRuntime requestValidationMode="" />  </>  </configurati

NETC开发中的常见经典问题汇总问 来自淘豆网www.taodocs.com转载请标明出处.

非法内容举报中心
文档信息
  • 页数177
  • 收藏数0 收藏
  • 顶次数0
  • 上传人jianjian401
  • 文件大小4.08 MB
  • 时间2019-11-13
最近更新