diff --git "a/13\346\264\252\347\201\277\350\212\263/ASP.NET \347\254\224\350\256\260.md" "b/13\346\264\252\347\201\277\350\212\263/ASP.NET \347\254\224\350\256\260.md" new file mode 100644 index 0000000000000000000000000000000000000000..9a9f5f43b04b7915daec52a56a9f0360fc2aeab7 --- /dev/null +++ "b/13\346\264\252\347\201\277\350\212\263/ASP.NET \347\254\224\350\256\260.md" @@ -0,0 +1,137 @@ +# ASP.NET 笔记 + +## 1.初识 webfrom + +### 1.1静态网页&服务器端开发技术 + +静态网页就是以.html 或者 .htm 结尾的网页,他只能单纯的显示图片和文本,没有办法进行前后端的交互(例如:登录) + +服务器端开发技术除了可以显示图片和文本还可以根据用户的请求动态的显示不同的网页内容,进行前后端的交互 + +## 2.页面对象 + +### 2.1运行原理 + +创建窗体时自动生成.aspx和.aspx.cs两个页面 aspx.cs里自动生成page方法,运行优先级最高 + +### 2.2网页生成过程总结 + +1.客户端点击提交按钮或者触发控件的事件 + +2.服务器端刷新整个页面 + +3.执行page_load事件 + +4.执行具体控件的事件并给页面控制赋值 + +5.重新生成新页面的HTML + +\6. 使用Response对象返回包含新数据的html页面 + +7.浏览器看到刷新后的页面 + +## 3:回发 + +产生的时机:当用户操作让表单产生submit时,回发产生。 + +原理分析:当前网页被提交给服务处理,处理时会对当前网页再次加载(重新绘制)。 + +Load事件:不管是首次加载还是回发,都会触发Load事件 + +## 4.page属性 + +## 4.1 ispostback + +ispostback 用于判断是回发还是首次加载,如果是回发的话他的值等于 true 首次加载的值等于false + +## 5.值传递 + +### 5.1页内传值 + +```CC +//存放信息 +ViewState["nameId"]="0001"; + +//读取信息 +String NameID = ViewState["nameID"].ToString(); +``` + +### 5.2跨页面传值 + +步骤: + +1.在Page1中使用IsPostBackUrl指定Page2 + +2.在Page2中的Page_Load编写代码: + + 1) 首先判断Page2页面是否有上一页,如果是没有那么Page.Previous == null + + 2)其次使用Previous.FindControl()查找上一页的指定ID值 + +## 6.内置对象 + +### 6.1viewstate对象 + +ViewState中保存的数据全部被转换成object类型,取出时务必强制转换成特定类型。 + +ViewState*只能在同一个页面的连续多次请求之间保存信息页面跳转后信息就会丢失 + +### 6.2 request 对象 + +QueryString(查询字符串):获取通过URL传递过来的数据 + +Form(表单数据):获取通过表单提交传输的数据 + +Form(表单数据):获取通过表单提交传输的数据 + +params:以上三种方式传输的内容都可以使用该属性获取 + +### 6.3 response 对象 + +可以进行重定向 跳转至不同的页面 + +Response.Write() //用于显示信息 + +Response.Redirect() // 用于重定向到跳转页面 + +### 6.4 server 对象 + +## 6.5 Session对象 + +session 可以实现不同页面间,数据的共享 + +sessionID 他是一个唯一的用户会话标识,不同的浏览器的session ID是不一样的 + +### 6.6 Cookie 对象 + +cookie用于存放一些不重要的数据,他需要设置过期时间 + +``` +创建方法1 +Response.Cookies[Cookie名].Value = 变量值; +创建方法2 +HttpCookie hc = new HttpCookie(Cookie名称,变量值); + Response.Cookies.Add(hcCookie); +设置有效期 +DateTime.Now.AddDays(1.0)//天 +创建Cookie使用Response,读取用Request + +读取方法 +string 变量名 = Request.Cookies[Cookie名称].Value +``` + +## 7.基本控件 + +### 7.1 文本类型的控件 + +Label 显示的是一个静态的文本,无法进行动态改变 + +Literal 显示的是一个纯文本,在源码界面不会有多余的代码可以进行动态的改变 + +TextBox 在页面上显示一个可编辑的文本框 + +textbox 属性 textmode 设置文本输入的行为模式 singleling 单行输入 multiline 多行输入 + +password 输入密码 + +HiddenField \ No newline at end of file