ASP.NET学习笔记

来源:互联网 发布:计算机网络 知乎 编辑:程序博客网 时间:2024/05/17 08:23

1. 嵌入式代码编写
1.1 页面中,<div id="Rest" runat="server"></div>
1.2 Head标签中
     <script language="c#" runat="server" >
        void Button1_Click(Object Src, EventArgs E) //注意函数写法
        {
            Rest.InnerHtml = "欢迎光临" + txtName.Text;
        }
     </script>

2. ASP.NET内置对象和配置
2.1 Response对象

            Response.Write(string str); //写客户端
            Response.Redirect(string Url); //重定向跳转
            Response.End(); //终止脚本
            Response.Flush(); //清空缓存
            Response.Clear(); //清除缓冲区流中的所有内容输出
            Response.Close(); //关闭到客户端的套接字连接
            Response.Cookies.Add(); //要添加到集合中的httpcookie

            //实例
            HttpCookie myCookie = new HttpCookie("mycookie");
            DateTime now = new DateTime();
            myCookie.Value = now.ToString();
            myCookie.Expires=now.AddHours(1);
            Response.Cookies.Add(myCookie);

2.2 Request对象
用来获取客户端在请求一个页面或者传送一个Form时提供的所有信息,包括能够标识浏览器和用户的HTTP变量,存储在客户端的

cookie信息以及附在URL后面的URL参数,表单中的控件的值等。
            Request.QueryString["id"];  //URL参数
            Request.UserHostAddress.ToString(); //IP
            Request.RawUrl.ToString(); //当前请求的原始URL
            Request.UserHostName; //远程主机名
            Request.IsLocal.ToString(); //是否是本地计算机
            Request.MapPath(string strFileName); //获得文件在服务器的物理路径
            Request.Form["id"]; //表单内容
2.3 Server对象
对服务器上的方法和属性进行访问,获取有关最新错误的信息
            Server.MachineName;  //服务器的计算机名称
            Server.ScriptTimeout; //获取和设置请求的超时值
            Server.ClearError(); //清除前一个异常
            Server.Execute(); //在当前请求的上下文中执行指定资源的处理程序,然后将执行返回给调用它的页
            Server.UrlEncode(string str);
            Server.UrlDecode(string str);
2.4 Application对象
不直接参与请求和响应的管理,而是在服务端对用户会话、服务状态进行处理。
Application对象可以再多个请求、连接之间共享公用信息,也可以在各个请求连接之间充当信息传递的管道。
在整个应用程序生命周期内,Application对象都有效,所以可以在不同的页面中对它进行存取,就像是用全局变量。
            Application.Lock();//解锁
            Application.Add("AppName0","abc");
            Application.Add("AppName1",123);
            for (int i = 0; i < Application.Count; i++)
            {
                Response.Write(Application[i]); //获取对象
                Response.Write(Application.Get(i));  //获取对象
                Response.Write(Application.GetKey(i)); //获取对象名
            }
            Application.Clear();  //清空
            Application.UnLock(); //解锁
2.5 Session对象
为当前用户会话提供信息,浏览器与服务器建立连接时,开始建立会话
            Session.Count; //会话状态集合的项数
            Session.Abandon(); //终止会话
            Session.Add(string str,object value); //添加sesson变量
            Session.Clear(); //清空
            Session.Remove(string str); //移除
            Session.Timeout=1;

3. Web.config配置文件
XML文本文件,用来存储应用程序配置信息,新建一个应用程序后,默认会在根目录自动创建一个默认的Web.config文件,所有子目

录继承它的设置,如果要改变子目录的配置,可以在子目录新建一个Web.config文件。


4.控件
ASP.NET中的控件分为:HTML控件、服务器控件。服务器控件又分HTML服务器控件,ASP.NET Web服务器控件和验证控件。
HTML控件可以分为HTML输入控件和HTML容器控件,所有控件都有Disabled、Visible等属性,容器控件则还有InnerHtml、Value等属


1.HTML服务器控件
我们知道HTML标签,比如<input type="text" onClick="btnSubmit_Click" />就是一个文本框标签,在ASP.NET中,这种标签称作“

HTML控件”。ASP.NET不会对这种控件做任何处理,但我们可以把它转化为HTML服务器控件,转化后的HTML控件的代码是:<input

id="Text1" type="text" runat="server" onServerClick="btnSubmit_Click" />.可以发现,它增加了一个id的属性和

runat="server"的属性   。这样就可以通过编程的方式访问和控制该控件。任何HTML控件加上runat="server"的属性,都可以转换成

HTML服务器控件(最好也加上ID属性,不管用不用得上)。控件的响应事件也有所不同
2.Web服务器控件(标准控件)
Web服务器控件的标签都是以“asp:”开头,称为标记前辍,后面是控件类型,另外Web服务器控件也都有id属性和默认的

runat="server"的属性,该runat属性也不能忽略不写,否则控件会被忽略,例如<asp:TextBox id="TextBox1"

runat="server"></asp:TextBox>
WEB服务器控件可以没有对应的HTML元素,它可以表述更为复杂的元素,被定义为抽象控件
那么什么时候用HTML控件,什么时候用标准控件呢?一般要在后台引用的就用服务器端控件,不然就用html控件;能不用服务器端控

件尽量不用 ,能用html控件就不要用web控件 。
3.验证控件
控件中包含验证逻辑以测试用户输入,开发人员可以将验证控件附加到输入控件,测试用户对该输入控件输入的内容。
实例1:
<asp:Button ID="Button1" runat="server" Text="Button"></asp:Button>
Button1.Attributes.Add("onclick", "confirm('提示信息')");
Button1.Attributes.Remove("onclick");

5.控件的一些属性
AccessKey属性:快捷键  AccessKey ="k";
TabIndex属性:Tab键顺序

TextBox控件
AutoPostBack属性:当TextBox控件失去焦点时是否自动回发到服务器的操作。
TextMode属性:SingleLine、MultiLine、Password
ToolTip属性:帮助文本