net复习.docx

上传人:b****4 文档编号:4926566 上传时间:2022-12-11 格式:DOCX 页数:19 大小:158.16KB
下载 相关 举报
net复习.docx_第1页
第1页 / 共19页
net复习.docx_第2页
第2页 / 共19页
net复习.docx_第3页
第3页 / 共19页
net复习.docx_第4页
第4页 / 共19页
net复习.docx_第5页
第5页 / 共19页
点击查看更多>>
下载资源
资源描述

net复习.docx

《net复习.docx》由会员分享,可在线阅读,更多相关《net复习.docx(19页珍藏版)》请在冰豆网上搜索。

net复习.docx

net复习

第1章.Net技术概述

1.NET代表一个集合,一个环境,一个可以作为平台支持下一代Internet的可编程结构。

2.Net技术分为两个部分:

规范:

公共语言架构(CommonLanguageInfrastructure,CLI)

通用类型系统,公共语言规范,通用中间语言和其它的标准文件和规范。

实现:

.NetFramework

.Net框架是一个用于生成、部署和运行XMLWeb服务及其他应用程序的环境。

它包含三个主要部分:

公共语言运行时(CommonLanguageRuntime,CLR)(就是一个虚拟机,它为各种.Net程序提供了一个高性能的、抽象于底层操作系统和硬件的运行时环境),.NetFramework类库和ASP.NET。

3.Net开发的应用类型

Web程序:

主要是利用ASP.NET技术开发的B/S模式的动态网站,用户可以使用IE浏览器进行访问。

WindowsForm,,移动数字设备程序,XMLWebServices应用程序

4.ASP.Net是.Net框架的一部分,是基于.Net的公共语言运行时CLR的一种编程框架,用于编写在服务器上运行的功能强大的Web应用程序和Web服务。

ASP.Net不是ASP(ActiveServerPage,动态服务器页面)的下一个版本,而且是一种建立在通用语言上的,全新的Web应用程序开发构架。

Asp使用脚本类型语言:

(javascript和vbscript)

A使用编译型语言:

(c#和)

特点:

a.代码编译后执行,效率高;b.脚本和html标记可以分离,利于web程序的表示层、商业逻辑层、数据库访问层的分离,增强了代码的可重用程度;c.程序的版权可以很好的得到控制。

(优势:

代码分离技术,控件驱动,新的数据存取机制ADO.net,数据绑定技术)

5.两种基本开发模型:

C/S模型(Client/Server,客户端/服务器),B/S模型(Browser/Server,浏览器/服务器)

6.静态网页纯HTML语言描述(.html或.htm文件),人工手动维护HTML代码,编程、调试困难交互性差。

动态网页是网页中包含有需要在Web服务器执行的代码(.jsp,.asp,.php及.aspx等)

不论以何种语言编写的动态网页,到达浏览器的时候都是HTML代码

7.IIS(InternetInformationServer微软服务器,使用简单,运行Windows操作系统)和Apache。

而Apache是一个开源软件,有Windows和Linux等系统下版本。

第二章C#程序设计

1.NetFramework命名空间功能:

用于组织.NETFramework提供的几千个类,使用命名空间可以解决类名冲突问题。

利用using语句使用命名空间,如“usingSystem;”表示导入System命名空间。

导入命名空间后,使用其包含的类时可省略命名空间。

System:

提供基本类

System.Configuration:

提供处理配置文件中数据的类

System.Data:

提供对ADO.NET类的访问,

System.Ling:

提供使用LINQ进行查询的类和接口

System.Web:

提供使浏览器与服务器相互通信的类和接口,如用于读取客户端信息的HttpRequest类。

System.Web.Security:

提供在Web服务器实现ASP.NET安全性的类,如用于验证用户凭据的MemberShip类。

2.C#语言的变量、数据类型(程序语言真正的核心——变量)

中级语言时代—里程碑、完全引入变量和变量类型

高级语言时代—变量概念的新发展,结构体(记录)

面向对象时代—面向类、Java、.Net传统变量类型被彻底放弃,所有的变量类型都被理解为类,所有的变量都成为对象

所有其他类型的最终基类:

object

接口类型interfaceI{...}

Unicode字符串string

委托类型delegateTD(...)形式的用户定义的类型

char√16位Unicode字符:

0到65535

short√有符号16位整数:

-32,768到32,767

int√有符号32位整数:

-2,147,483,648到2,147,483,647

long√有符号64位整数:

-9,223,372,036,854,775,808到9,223,372,036,854,775,807

float√单精度32位浮点数(精度7位):

±1.5×10−45到±3.4×10+38

double√双精度64位浮点数(精度15-16位):

±5.0×10−324到±1.7×10308

bool√布尔变量(true或false)

string√表示一个Unicode字符的字符串

C#语言的数据类型(平台无关的方式来定义)——通用类型系统

数据类型,可以有方法

(如floatf=3.14F,floatf=(float)3.14,doublef=3.14)

装箱和拆箱:

在值类型和引用类型间转换boxing//unboxing

intx=0;

if(x){}×

可用if(x!

=0)进行显式比较

或者用转换函数

if(System.Convert.ToBoolean(x)){}//非0为true

charMyChar=65;//×:

integraltypecannotfitinchar

charMyChar=(char)65;//√:

Castfromintegraltype

inta=MyChar;//√:

implicitconversiontoint

charc=(char)Console.Read();//读入一个字符(返回值为int型)

if(char.IsLetter(c))//是否是字母

if(char.IsLower(c))//是否是小写字母

用法示例-string型b=b+"ello";//+是连接字符串,b="hello"

比较两个字符串的最简单方法是使用==和!

=运算符,执行区分大小写的比较。

s1.CompareTo(s2)-1(s1s2)s.Length就是字符串长度

C#数组属于引用类型,其基类是System.Array

字符串中可以包含转义符

c:

\myFolder\myFile.txtstrings2="c:

\\myFolder\\myFile.txt";//不易阅读

C#字符串可以@开头,并用双引号引起来:

√strings3=@"c:

\myFolder\myFile.txt";

若要在一个用@引起来的字符串中包括一个双引号,则应使用两个双引号:

字符串转换为其它型的方法√类型.Parse()方法(很重要)Sytem.Convert.To类型()方法

strings1="123";

inta=int.Parse(s1);

textBox1.Text=Convert.ToString(i);

textBox2.Text=i.ToString();

将数字转换为字符串时,需要使用ToString()方法,或者使用Convert.ToString()方法。

foreach循环语句foreach(数据类型循环变量in集合){//执行语句块;}

int[]arr={1,3,5,2,4,6,8};foreach(intxinarr);//遍历数组

stringinput=Console.ReadLine();

foreach(charchrininput)

{if(chr.IsLetter(chr))letters++;//字母

elseif(chr.IsNumber(chr))digits++;//数字

elseif(chr.IsWhiteSpace(chr))spaces++;//空格

elseothers++;//其它}

C#基本输入输出

输出语句:

System.Console.Write();

System.Console.WriteLine();//有换行

输入语句:

System.Console.ReadLine();//读取一行字符

System.Console.Read();//读取一个字符(返回值为int型)

输出多个数据Console.WriteLine("{0}+{1}={2}",a,b,sum);//{占位符}数据用逗号分隔

Console.WriteLine("i={0,4},j={1,-7}",i,j);//4,7代表宽度,负号表示左对齐

Console.WriteLine("j={0:

f1}",j);//j=123.5//f表示浮点数,1表示小数位数(四舍五入)

Console.WriteLine("i={0,7:

x}",i);//i=︼︼︼︼︼7b

Console.WriteLine("i={0:

x}",i);//i=7b

//x表示16进制数“:

”后面对数据进行格式补充

C#数组属于引用类型,其基类是System.Array

一维:

类型[]数组名=new类型[数组大小]

二维:

类型[,]数组名=new类型[行数,列数]

交错数组(数组的数组):

例如:

int[][]数组名=new类型[个数][];

一位数组

int[]myArr=newint[5];//此时元素初值都为零

int[]myArr=newint[5]{1,3,5,7,9};

int[]myArr=newint[]{1,3,5,7,9};//数组大小可省略

int[]myArr={1,3,5,7,9};//快捷方式√(必须声明赋值一起)

二维数组

int[,]myArray=newint[4,2];//此时元素初值都为零

int[,]myArray=newint[4,2]{{1,2},{3,4},{5,6},{7,8}};

int[,]myArray=newint[,]{{1,2},{3,4},{5,6},{7,8}};

int[,]myArray={{1,2},{3,4},{5,6},{7,8}};//默认为矩阵(必须声明赋值一步到位)

GetLowerBound(int)、GetUpperBound(int)返回数组指定维数的下界和上界,维数从0开始

Array.Length返回Array数组的所有元素的总数

Array.Rank返回Array数组的秩(维数)

Array.GetLength(int)返回Array数组的指定维中的元素个数

交错数组

交错数组的元素是数组("数组的数组").

交错数组元素的维度和大小可以不同。

声明方式:

int[][]jaggedArr=newint[4][];

初始化方式1:

先声明后初始化

jaggedArr[0]=newint[6]{1,3,5,7,9,11};jaggedArr[1]=newint[2]{1,1};........

初始化方式2:

在声明数组时将其初始化:

int[][]jaggedArr=newint[4][]

{newint[]{1,3,5,7,9,11},

newint[]{1,1},

newint[]{2,4,6},

newint[]{1,0,0,0,1}

};

动态数组

方式1:

ArrayListal1=newArrayList();//该实例具有默认初始容量,但没有任何元素

方式2:

ArrayListal1=newArrayList(al2);//已有集合类来创建新的ArrayList,容量相同

方式3:

ArrayListal1=newArrayList(10);//用一个整数值来初始化ArrayList容量

Capacity-获取或设置ArrayList可包含的元素数。

Count-获取ArrayList中实际包含的元素数。

遍历ArrayList数组

staticvoidDisplayAL(ArrayListal)

{

if(al.Count<=0){Console.WriteLine("数组没有元素");}

foreach(objectsinal)

{

Console.WriteLine(Convert.ToString(s));

}

}

Add将单个对象添加到ArrayList的尾部ArrayListal=newArrayList();al.Add("a");

AddRange将集合实例添加到ArrayList的尾部string[]strs={"c","d","e"};al.AddRange(strs);

Insert将单个对象插入到ArrayList的指定索引处

InsertRange将集合实例插入到ArrayList的指定索引处

Remove(objectobj)-从前(索引0)往后查找,删除找到的第一个和obj相同的元素。

RemoveAt(intindex)-删除索引index对应的元素。

RemoveRange(intindex,intcount)-从索引index开始,删除count个元素。

Clear-从ArrayList中移除所有元素

Sort-对ArrayList或它的一部分中的元素进行排序。

//默认升序

Reverse-将ArrayList或它的一部分中元素的顺序反转。

al.Reverse();//全部反转

al.Reverse(1,2);//部分反转1开始索引2反转个数

Contains-确定某元素是否在ArrayList中(true/false)

IndexOf(objectvalue)-从前(索引0)往后查找,返回找到的第一个和obj相同的元素的索引

IndexOf(objectvalue,intstartIndex)

IndexOf(objectvalue,intstartIndex,intcount)

LastIndexOf(objectvalue)-从后往前(索引0)查找,。

返回第一个找到的索引

LastIndexOf(objectvalue,intstartIndex)

LastIndexOf(objectvalue,intstartIndex,intcount)

小结

C#语言的产生背景

.NetFramework命名空间

(1)提供类对象

(2)解决类名冲突

C#语言的变量和数据类型

(1)所有数据类型都是对象

(2)值类型(3)引用类型

C#语言的运算符、表达式和控制语句

C#语言的类和对象

(1)面向对象的思想——通过对象整合数据和数据操作

(2)类和对象的关系

(3)类的定义、构造函数、析构函数、数据成员、函数成员

第3章ASP.Net标准控件

ASP.Net页面的生命周期

首次载入

第一次以后的回传(PostBack)访问

Page_Load

IsPostBack属性

ASP.Net标准控件:

控件属性,控件事件

ASP.Net页面的生命周期

第一次访问:

1)预初始化和初始化:

PreInit;Init;*.aspx中的所有控件都已实例化并采取各自的默认值

2)页面装载:

细分PreLoad,Load,LoadComplete;主要是Page_Load运行这里面的程序

3)预呈现:

PreRender,可以利用该阶段来处理需要在保存和显示输出之前要做的操作。

4)保存状态:

SaveViewState所有控件,页面本身都将自己的值保存在_ViewState隐藏属性中。

5)呈现:

Render,输出6)卸载:

Page_Unload

用户第一次以后的回传访问(PostBack):

1)初始化:

Init

2)加载视图状态:

LoadViewState,从_ViewState中读出数据,它包含上次在服务器上处理时控件的状态。

3)处理回发数据:

ProcessPostData

获取回传回来的页面中的控件的状态,比如:

一个TextBox中可能已经填写了用户数据。

此时,控件就有机会更新其状态。

处理结束后,各个控件的状态就和它在客户端回传前的状态一致了。

4)页面装载:

Page_Load运行Page_Load里的代码。

5)发送回传更改通知:

RaiseChangedEvents

引发一个事件,以响应当前和以前状态的比较,发送一个回发更改通知。

比如:

TextBox的TextChanged事件。

6)处理回发事件:

RaisePostBackEvent处理用户引发回发的事件,比如,用户单击了一个按钮,将调用和这个按钮相关的代码来进行处理。

7)预呈现:

PreRender可以利用该阶段来处理需要在保存和显示输出之前要做更新操作。

8)保存状态:

SaveViewState9)呈现:

Render,输出10)卸载:

Page_Unload

Page的IsPostBack属性

通过页面的IsPostBack属性可以判断*.aspx页面是否为回传给服务器的页面。

一般在Page_Load事件中进行判断,并作相应的处理。

标准控件全部运行于服务器端,即必须显示声明:

runat="server".

这类控件在服务器端都以特殊的控件标签作为其HTML语法:

控件名称>

当页面运行于客户端时,它们就会自动生成相应的符合HTML语法的控件标签。

TextBox文本编辑

Text获取或设置控件的文本内容

MaxLength获取或设置最多允许的字符数(单行或密码模式下适用)

TextMode获取或设置控件的显示模式(单行、多行或密码)SingleLinePasswordMultiLine

文本框:

textboxrunat="server"Text="请输入用户名">

textbox>

最多6位密码框:

textboxrunat="server"MaxLength="6"TextMode="Password"/>

多行文本框(不能自动换行):

textboxrunat="server"Rows="10"TextMode="MultiLine"Wrap="False"/>

Button/LinkButton/ImageButton

当用户单击这三种类型按钮中任何一个时,都会产生Click事件,同时都会自动产生向服务器回送的操作。

PostBackUrl获取或设置单击控件时从当前页发送到的网页的URL

Response.Redirect(“~\.......aspx”);

NavigateURL获取或设置HyperLink控件链接到的URL

AlternateText获取或设置ImageButton控件图像(ImageURL)失效时所显示文本

DropDownList只能单选

DropDownList控件实质是列表项(ListItem)容器,每个列表项对象都带有自己的属性,列表项可以通过手动或编程方式添加。

Items获取列表控件项的集合(Items属性

Text指定在列表中显示的文本

Value与列表某个选项相关联的值

Selected通过一个bool值指示是否选择该项)

SelectedIndex获取或设置DropDownList控件选定项的索引

SelectedValue获取DropDownList控件选定项的值,或选择指定值的项

SelectedItem获取DropDownList控件索引值最小的选定项

SelectedIndexChanged事件

当选择项发生改变时,触发该事件。

Click事件

protectedvoidButton1_Click(objectsender,EventArgse)

配合AutoPostBack=true自动产生向服务器回送的操作。

protectedvoidDropDownList1_SelectedIndexChanged(objectsender,EventArgse)

DropDownList1.Items.Count:

获取列表项总数

DropDownList1.Items.Add(项目名):

添加一个新项目

DropDownList1.Items.Remove(项目名):

删除指定项目

DropDownList1.Items.Insert(索引值,项目名):

在指定索引位置添加一个新项目

DropDownList1.Items.RemoveAt(索引值):

删除指定索引项

DropDownList1.Items.Clear():

清除所有项目

for(inti=0;i<10;i++)

{DropDownList1.Items.Add("选项"+i.ToString());}

遍历:

for(inti=0;i

Response.Write(DropDownList1.Items[i].Text+"
");

或者:

foreach(ListItemsinDropDownList1.Items)

Response.Write(s.Text+"
");

清除1:

效果一样吗?

for(inti=0;i

DropDownList1.Items.RemoveAt(i);

清除2:

for(inti=DropDownList1.Items.Count-1;i>=0;i--)

DropDownList1.Items.RemoveAt(i);

清除3:

DropDownList1.Items.Clear();

第4章Web服务器验证控件

1.RequiredFieldValidator

2.CompareValidator

3.RangeValidator

4.RegularExpressionValidator

5.CustomValidator

6.ValidationSummary

RequiredFieldValidator确保用户输入数据时不会跳过必填字段(强制输入数据)

ControlToValidate获取或设置要验证的输入控件的ID√

InitialValue获取或设置要验证的输入控

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 求职职场 > 简历

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1