欢迎您访问我爱IT技术网,今天小编为你分享的编程技术是:【ASP.NET笔记之 控件与母板的区别分析】,下面是详细的讲解!
ASP.NET笔记之 控件与母板的区别分析
1、ASP.NET的好坏处
CodeBehind:“前aspx后cs”的模式,
(1、aspx(控件定义、html、css)控制页面长相,cs控制程序逻辑
aspx就是模板引擎,不需要再去寻找第三方的模板引擎
(2、aspx中调用cs的成员级别必须是protected或者public不能是private
因为当前this执行的是当前的子类(通过反编译查看)

2、

Literal:
Mode属性,避免XSS攻击
TextBox:
AutopostBack=true 焦点离开Textbox提交表单
ASP.NET中经常不直接调用submit而是调用_doPostBack方法提交表单
TestChanged事件配合AutopostBack可以点击submit自动提交表单更新输入文本
Button:OnCLientClick
return confirm("真的要执行吗?")


3、Button、LinkButton、ImageButton让多个控件共享一个处理函数:
command属性设置响应函数
CommandArgument=“daomul”(命令参数传参数)
CommandName=“Remove”(名字)
4、
Panal:
弄成"高级设置"(fieldset)的渲染形式:GroupingText=“高级设置”
HyperLink:引用站内内部资源的时候很方便(自动转换路径)
NavigateUrl属性

5、
FileUpload:
FileUploadl.HasFile:用户是否选择了文件
FileUploadl.SaveAs("根目录全路径"):
Server.Mapath或者VirtualPathUtility.ToAbsolute都可以
path=Server.Mapath(“~/upload/”);
漏洞:(只允许上传指定类型的文件)
System.IO.File.Delete(Server.Mapath.("~/upload/"));
System.IO.File.ReadAllText(Server.Mapath.("~/upload/"));
6、实例:注册界面
Register.aspx
Register.apsx.cs
其中要用到的正则表达式:


插入数据记录:INSERT INTO [dbo].[T_userInfo] ([sUserName], [sPassWord], [Email]) output Inserted.Id VALUES (@sUserName, @sPassWord, @Email)
(1、增加SQL语句,
(2、增加一个output Insert.Id 在Insert语句当中
(3、设置ExecuteMode属性为Scalar
7、三种控件的区别:html控件、服务端控件。runat=server 的控件(最好)
a1.Attributes("aaa")="建属性赋值";

8、验证控件

(1、 RequiredFieldVal:
设置哪个控件和显示名称(还有CausesValdation焦点移开) -----为空
初始值:InitleValue(请输入关键字、包括下拉框的初始值)

Validator共性
!!!!!!!!!!
if(!IsValid){return;}
if(this.IsValid){//防止跳过客户端校验IsValid表示页面中所有Validator是否都通过了
label1.Text="";
}
else{
label1.Text="客户端填写不足或有错误";
}


ValidstionGroup 分组(表单可以在页面内单个组提交,而不关联其他组)相同于按钮的name
(2、RangeValidator:范围验证
最大最小比较
Date.Now.()baidu下

(3、只有RequiredFieldValidator可以对字段为空进行验证
(4、CompareValidator:比较验证(类型校验、与其他控件比较、)
ControlToCompare设置为要比较的控件

RegularExpression:
VaildationExpression 正则表达式验证
CustomVaildate自定义控件验证
ServerValidate服务端校验代码
ClientVlidtionFunction

(5、ValidationSummary汇总错误信息
text 和ErrorMsg的区别,ErrorMsg就是用于ValidationSummary中,
而text则是直接显示在验证控件位置


母版:
//操作模板页的控件
Button btn=(Button)this.Master.FindControl("Button1");
btn.Visible=!btn.Vissble;
this.Master.Mapath();
虚拟路径转化为客户端访问的路径(不是服务端控件):
src="<%=ResolveClientUrl%>"
this.ResolveClientUrl();
ResolveClientUrl:考虑当前页面的路径
ResolveUrl:生成一个从根开始的路径


关于ASP.NET笔记之 控件与母板的区别分析的用户互动如下:
相关问题:
答: >>详细
相关问题:
答: >>详细
相关问题:
答: >>详细
- 【asp】asp.net url重写浅谈-net-url重写
- 【DataSet】DataSet、DataTable、DataRow区别详解
- 【asp】asp.net 动态添加多个用户控件-net-动态添
- 【ASP】ASP.NET中内嵌页面代码的一个问题-NET-内
- 【创建】ASP.NET Web API教程 创建域模型的方法详
- 【Asp】Asp.net 页面调用javascript变量的值-net-
- 【ASP】ASP.NET 5升级后如何删除旧版本的DNX-NET5
- 【404页面】ASP.NET设置404页面返回302HTTP状态码
- 【asp】asp.net开发中常见公共捕获异常方式总结(
- 【Visual】分享Visual Studio原生开发的10个调试
- 评论列表(网友评论仅供网友表达个人看法,并不表明本站同意其观点或证实其描述)
-
