asp.net(1)

来源:互联网 发布:nba季后赛数据排行榜 编辑:程序博客网 时间:2024/06/07 14:55

AspNet

(1)        

Crm客户关系

hrms:人事管理

 

2webform

B/s:通过浏览器访问,升级扩展方便

C/s:在客户机上需要安装软件,需要在客户端上进行升级扩展

 

3aspNet

与浏览器无关,方便设置断点,易于调试,编译后执行,运行效率高,丰富的控件库,代码后置,逻辑分明

 

代码编译成中间语言(MsIL,jit编译器,最后到机器语言

 

vs中内置类一个Cassini

 

4)企业级应用

Web系统/应用,网站

开发阶段调试,部署就不在调试

WebConfig是生成的网页

 

App_data存放数据的文件夹,default自动创建的窗体文件,default.aspx.cs代码后置文件,web.config站点配置文件

 

AspNet有两种编码方式:代码内嵌和代码后置

 

代码内嵌,html代码和c#交叉使用

 

<script runat="server">

 

</script>

这是c#脚本

 

<%%>里面写入c#脚本

 

<%@ Page Language="C#" %>

 

html中内嵌的c#内容

    <% name = "hello"; %>

<%=name; %>//输出一个表达式

 

可以直接将数据库中的表拖到设计视图中,则自动使用的控件为gridview,表的列设置column

Gridview使用右键自动套用格式,allowpaging表示允许分页,pagesize表示分页的页数

 

要分清楚是html控件,还是c#控件

 

代码后置是htmlc#代码分开

 

5)状态保持

保持状态sessioncookieapplication

 

AspNet运行机制,第一次请求的是。Aspx文件,与后台编码类生成页面类,然后编译,最后显示给用户,第二次访问时,直接访问的是页面类

 

 

系统对象

JSP

ASP.NET

Page对象

指向页面自身的方式。作用域为页面执行期。

Request对象

读取客户端在Web请求期间发送的值

Response 对象

封装了页面执行期返回到HTTP客户端的输出

Application对象

作用于整个程序运行期的状态对象

Session 对象

会话期状态保持对象,用于跟踪单一用户的会话。

Cookie 对象

客户端保持会话信息的一种方式

Server 对象

无,但其他对象提供了相应方法

提供对服务器上的方法和属性的访问

 

1page对象

每个aspx文件对应一个Page对象,aspx与后台代码类合并生成页面类,Page对象是页面类的实例,所有的aspx文件都继承自System.Web.UI.Page

 

一个页面只能有一个page对象

 

<%@ Page

Language="C#" //指明页面代码和后置代码所使用的脚本语言

 

AutoEventWireup="true"  //设置是否自动调用网页事件 默认为true

CodeFile=“Default.aspx.cs"        //指定代码后置文件该文件包含此页面的局部类

 

Inherits="_Default" %>//代码后置的类局部类

 

 

 

 

2Request对象

获得页面输入,url传参,form表单提交

属性:

QueryString:获取通过url路径传来的数据

Form:获得表单提交传输的数据

ServerVariables:获取web服务器变量的集合,相当于dictionary集合存在键值对

Params:以上三种方式传输的内容都可以使用该属性获取

 

Request.ServerVariables["HTTP_ACCEPT_LANGUAGE"]

 

        for (int i = 0; i < Request.ServerVariables.AllKeys.Length;i++ )

        {

            Response.Write(Request.ServerVariables.AllKeys[i]+"------");

            Response.Write("<p>");

            Response.Write(Request.ServerVariables[i] + "------");

        }

 

3Response对象

方法:

Write()直接在页面上输出内容

Redirect()重定向到另外一个页面

 

4)页面数据传递

1,回传(同一页面传递内容)

        if (this.Page.IsPostBack)

        {

            this.Label1.Text = "这是回传的信息";

        }

        else

        {

            this.Label1.Text = "这是首页加载的信息";

        }

通过IsPostBack判断是否是第一次进行这个页面

 

 

 

 

 

 

 

 

 

 

 

2,跨页的数据传递

按钮中postbackurl属性表示单击按钮时所发送到的url

 

c#代码中可以直接操作向当前页面传递数据的页面中的控件获取数据

 

if (this.PreviousPage!=null)

        {

            if (this.PreviousPage.IsCrossPagePostBack)

            {

                this.lblMessage.Text = ((TextBox)(this.PreviousPage.FindControl("txtSearch"))).Text.Trim();

            }

        }

        else

        {

            this.lblMessage.Text = "没有上一页";

        }

this.PreviousPage:获取向当前页传输控件的页

this.PreviousPage.IsCrossPagePostBack判断跨页回发中是否有这个页面

(TextBox)(PreviousPage.FindControl("txtSearch")找到上页的控件,并且要进行类型转换

 

最后判断是否存在上一页

 

5Session对象

Session对象是一个键值集合

创建一个实体类,然后为实体类的每个属性赋值,然后加到Session集合中

            User user = new User();

            user.Username = TextBox1.Text.Trim();

            user.Password = TextBox2.Text.Trim();

            Session["MyUser"] = user;

 

从集合中取出用户

if(Session[“MyUser”]!=null)

{

 User user=(User)Session[“MyUser”];

}

 

当一个用户打开一个session,就会在服务器端创建一个session,并且为这个session命名,所以在服务器端会有多个session,然后服务器区分哪个客户是哪个session

 

 

 

 

6cookie

创建并向客户端添加cookie

HttpCookie hcCookie = new HttpCookie("UserName", “张三");

Response.Cookies.Add(hcCookie);

 

从客户端读取cookie

string UserName=Request.Cookies["UserName"].Value;

 

hcookieExpires=DateTimeNowAddDays();

 

7Server

Server对象是HttpServerUtility的一个实例,它提供对服务器上的方法和属性的访问

方法:

MapPath:取得文件的物理路径

ExecuteTransfer:执行另一个页面的脚本

HtmlEncodeHtmlDecode:将文本编码成可以在浏览器中可正确浏览的格式

UrlEncodeUrlDecodeurl编码和解码

 

 

在方法前用new表示对方法的隐藏,new能够隐藏虚方法,但是不能因此抽象方法

 

使用子类实例化父类对象,那么该对象不能访问父类中的私有方法,能够调用子类中重写和隐藏的方法

 

原创粉丝点击