服务器控件
要使用
Web
控件,只要在标记中加上
ASP:
,并指定
Web
控件的类别名称便可。
如:
<
ASP:Label
Id="Label1" Text="
这是一个
Label
类别的
Web
控件
"
Runat="Server" />
Label
控件
1.
<asp:Label
2.
id=
“
控件名称
"
3.
Text=
“
显示文本
"
4.
Font-Name=
“
宋体
”
5.
Font-Size="
10.5pt
"
6.
Width="200px
“
7.
BorderStyle="solid
“
8.
BorderColor="#cccccc"
9.
runat="server"/>
文本输入控件
TextBox
TextBox
主要用于单行或多行文本输入。
n
<
asp:TextBox
1.
id=
“
Text
1
”
2.
TextMode=
“
singleline/Password/multiline
”
3.
Columns=
“
10
”
4.
rows=
“
5
”
5.
Text=
“
显示文本
”
6.
Width="200px
“
7.
runat="server"/>
8.
OnTextChanged=
“
输入发生变化时产生的事件
”
9.
</asp:TextBox>
控制和连接控件
n
普通按钮控件
Button
n
做用:接收使用者的
Click
事件,并执行相对应的事件处理程序。
n
<
asp:Button id=Button1 Text="
单击我
"
onclick="Button1_Click"
runat="server" />
连接按钮控件
LinkButton
n
功能和
Button Web
控件同样,只不过它是相似超级连接的文字接口,具备超级连接按钮外观,不能连接到另外一个页面。
1.
<ASP:LinkButton
2.
Id="
控件名称
"
3.
Runat="Server"
4.
Text="
按钮上的文字
"
5.
Command="
命令名称
"
6.
CommandArgument="
命令参数
"
7.
OnClick="
事件程序名
"
8.
/>
提醒:
LinkButton
必须写在
<Form>
和
</Form>
之间,也要指定
OnClick
属性才会动做。
ImageButton Web
控件
n
ImageButton Web
控件的做用和上述两个控件同样,不过这个控件是用图片来当作按钮。
n
语法:
1.
<ASP:ImageButton
2.
Id="
控件名称
“
3.
ImageUrl=“
图形文件地址
”
4.
Runat="Server"
5.
CommandName="
命令名称
"
6.
CommandArgument="
命令参数
"
7.
OnClick="
事件程序名
"
8.
/>
超级连接控件
HyPerlink
n
用于在
Web
页面建立超级连接。优势是能够用服务器代码设置连接的属性。使用的方法很简单。
<asp: HyPerlink id=“
控件名称
”
NavigateUrl=“
连接的主页地址
”
Text=“
页面显示信息
”
ImageUrl=“
图形的源地址
”
Target=“
目标窗口
”
…
runat=“server”/>
选择控件
n
复选框控件CheckBox
n
复选框列表控件CheckBoxList
n
n
单选按钮控件RadioButton
n
单选按钮列表控件RadioButtonList
n
n
列表框控件ListBox
n
下拉列表框控件DropDownList
容器类控件
n
Panel
面板控件
n
Panel
控件每每做为一个容器控件来使用,经过设置
Panel
控件的属性来改变在其内部的一组控件的界面。
n
一个内容较多的表单每每要分多页显示,为了将全部的代码放在同一
aspx
文件中,能够将表单部分的代码分红几个组成部分,每一个部分都由一个
Panel
控件控制它的显示或隐藏。
n
Table
表格控件
TableRow
行控件
TableCell
单元控件
n
表格控件
Table
包含:
n
表格行控件
TableRow
n
表格单元控件
TableCell
n
一个或多个
TableCell
控件构成一个
TableRow
控件。一个或多个
TableRow
控件构成一个
Table
控件
<
asp
:
Table id=”MyTable”
BacklmageUrl=”url”
背景图形地址
HorizontalAlign
=
”value
1”
Cellspacing=”cellspacing”
表格单元间的距离
CellPadding=”cellpadding”
表格边框距离
GridLines
=
”value
2”
….
runat
=
server
>
<
asp
:
TableRow
>
<
asp
:
TableCell
>
Cell text
</
asp
:
TableCell
>
</
asp
:
TableRow
>
<
/asp
:
Table
>
验证控件共有
5
个:
1.RequiredFieldValidator
必须字段验证控件
必须字段验证控件
,适用于要求用户必须输入数据的状况。
若是用户没有对这些控件输人信息,则会产生验证错误。
2.Compar.idator
比较验证控件
比较验证控件
,可用于对指定控件的值进行某种方式的比较(大于
.
小于
.
等于
.
不等于
.
大于等于
.
小于等于
.
不等于等)。
3.Rang.idator
范围验证控件
n
用于验证用户输人的值是否在指定的范围内。
4.Regular.Validator
正则表达式验证控件
用于验证用户输入的数据
(
电话号码、邮政编码、
E-mail
等
)
是否符合自定义的规则表达式(
Regular .
)。
5.ValidationSummary
验证总结控件
n
验证总结控件
,该控件自己并不提供任何验证,
用于收集以上全部末经过检验的控件的
ErrorMessage
属性的值,并显示在同一页面。
验证控件的
ControlToValidate
属性的做用
:用于指定要验证的控件
n
[
1ab24
]
{4}
:
表示必须输人一个由
4
个符号组成字符串,其中每一个符号都必须是
“
1”
、
“‘a”
、
“b”
、
“
2”
或
“
4”
中的
1
个。
n
[^0
-
9] {1}
:
表示输人一个非数字字符,其中的符号
“^”
为
“
反
”
操做符。
[A
-
Za-z]{2} l
[
0
-
9
]
{2} :
表示必须输人
2
个英文字母或
2
个数字,其中的
“l”
是
“
或
”
操做符。于是
“cD”
与
“
35”
都是正确的,而
“D
4”
是错误的。
对于这样的表达式
“
[
a
]
{1} l[A] {1} ”
,它表示输人一个字符
“a”
或输人一个字符
“A”
,
能够简写成
“‘aIA”
。
[A-Za-z0-9_\-\.]{3,}
:表示必须输入一个由字母、数字、符号
“
_
”
、
“
-
”
以及
“.”
组成的长度为3以上的字符串。
DataGrid
控件
n
是一个功能强大的数据管理控件。它可使用数据绑定技术,在数据初始化的时候绑定一个数据源。
n
以表格形式显示数据源数据和以列为单位,设定各列的操做类型。
DataGrid
中的
每一行表示数据源中的一个记录,每一列表示数据源中的一个字段(列)。
n
DataGrid
控件支持选择、编辑、删除、分页显示和排序等功能。
DataGrid
控件基本语法
<
asp DataGrid id=”
控件名称
”
Headerstyle-BackColor=”
标题栏背景颜色值。
Width=”
宽度值,可使用像素值或百分比
”
OnEditCommand
=
”
单击编辑按钮时的事件名称
”
OnUpdateCommand
=
”
单击更新按钮时的事件名称
”
OnCancelCommand
=
”
单击取消按钮时的事件名称
”
OnDeleteCommand
=
”
单击删除按钮时的事件名称
”
OnltemCommnd
=
”
单击其余按钮时的事件名称
”
DataKeyField
=
”
关键字段,相似于数据库中的主键
”
AutOGenerateColumns
=
”True|False
,是否自动产生每一列
“
runat=”server”/>
属性
AutoGenerateColumns
设置
(
或返回
)DataGrid
控件是否能够自动产生列
(Columns)
,默认值是
“
True
”
,意味着
DataGrid
是能够自动产生列,
DataGrid
控件将数据源中的数据所有以原样显示出来。
也能够令
AutOGenerateColumns
=
”False”
,而后手工生成每一列。
将数据绑定到
DataGrid
控件的语法:
DataGrid
控件名称
.DataSource =
数据对象
DataGrid
控件名称
.DataBind()
定制列
n
若是
DataGrid
控件的
AutoGenerateColumns
属性值为
“False”,
那么程序能够自定义
DataGrid
控件的列
,
包括每一列的显示内容、顺序和样式等。
n
n
DataGrid
控件提供了列
(Column)
的五种类型
:
BoundColumn
列
n
BoundColumn
是基本的列类型,
DataGrid
自动产生的列类型
(AutoGenerateColumns
属性值为
“
True
”
)
即是
BoundColumn
。
n
BoundColumn
最主要的功能是利用
Label
来显示数据源中的一个字段内容,其使用语法以下所示:
HyperlinkColumn
列
HyperlinkColumn
最主要的功能是以超级连接来显示数据源中的一个字段内容,并能够指定使用者点击该项目时所要打开的
URL
地址。
Button
Column
列
Button
Column
列
的内容能够是利用
LinkButton
或
PushButton
来显示自定义的文字或者数据源中的一个字段内容,而且能够触发
DataGrid
控件的
OnItemCommand
事件,这样程序即可以对特定事件进行处理。
EditCommandColumn
列
EditCommandColumn
列拥有
3
个按钮,当
DataGrid
处于非编辑状态时,
该
列只显示编辑按钮,该按钮的标题由
EditText
属性值决定。当
DataGrid
处于编辑状态时,
该
列同时显示更新和放弃按钮,其标题分别由
UpdateText
和
CancelText
属性决定。
当使用者点击了编辑按钮时,
DataGrid Web
控件会自动触发
OnEditCommand
事件,并执行
OnEditCommand
属性所指定的事件程序;假若点击了更新或者放弃按钮,也同样分别自动触发
OnUpdateCommand
以及
OnCancelCommand
事件。
TemplateColumn
列
控件和数据源进行链接
要将控件和数据源进行链接,最简单的方式就是直接把数据指定给控件的某个属性,或者是使用数据链接说明,可让控件取得数据源的数据,只要在控件中须要数据源提供数据的地方插入'<%#数据源%>' 便可。
NET数据提供程序(Data Providers)
Connection
用来链接到数据库
Command
用来对数据库执行
SQL
命令,如查询语句。
DataReader
用来从数据库返回只读数据。
DataAdapter
用来从数据库返回数据,并送到
Dataset
对象中,还要负责保证
Dataset
对象中的数据和数据库中的数据保持一致。
数据集(
DataSet
)
它能够看作是内存中的数据库。利用
DataAdapter
对象将数据库中的数据送到该对象中,而后就能够在其中对数据进行各类操做,最后再利用
DataAdaPter
对象将更新反映到数据库中。
ADO.NET
两种读取数据库的方式
§
利用
Connetction
、
Command
和
DataReader
对象,这种方式只能读取数据库,不能修改记录。若是只是想查询记录的话,这种方式的效率更高些。
§
§
利用
Connection
、
Command
、
DataAdaPter
和
Dataset
对象,这种方式更灵活,能够对数据库进行各类操做。
基于
OLE DB
的数据库的相关
名称空间
§
若是要使用基于
OLE DB
的数据库,须要在页面中导入相关的
名称空间
,语法以下:
<
%@
Import Namespace=“System.Data”
%
>
<%@
Import Namespace=“
System.Data.OleDb
”
%>
要使用
ADO
.
NET
,必需要先加载
System.Data
这个名称空间,由于
System
.
Data
这个名称空间中包括大部分组成
ADO
.
NET
架构的基础对象类别,例如
Dataset
对象、数据表、字段、关联等。
要使用
OleDB
数据操做组件
来存取数据,必须加载
System
.
Data
.
OleDB
这个名称空间。
OleDB
数据操做组件经过
OLE DB
和数据源联机,故
System
.
Data
.
OleDB
这个名称空间定义了
OIeDB
数据操做组件的对象类别,例如
OleDBConnection
对象、
OleDBCommand
对象、
OleDBDataAdapter
对象及
OleDBDataReader
对象。
创建
Connection
对象
Dim conn As New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source="&Server.MapPath("wwwlink.mdb"))
或
Dim conn As New OleDbConnection
conn.ConnectionString= "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="&Server.MapPath("wwwlink.mdb")
DataReader
对象
DataReader
对象一次只读取一条记录,只读,只进,因此效率很好并且能够下降网络负载。
下列程序代码片断返回能够读取
Members
数据表中全部的记录的
DataReader
对象:
dim conn as new OleDBConnection
dim cmd as new OleDBCommand
Dim dr As OleDbDataReader
conn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" &server.mappath("Members.mdb")
conn.open()
cmd.connection=conn
cmd.commandtext=text1.value
cmd.commandtype=commandtype.tabledirect
cmd.ExecuteReader(dr) ’
执行结果到
dr
对象
DataSet (
数据集
)
对象
是
ADO.NET
的核心组件。
与
ADO
中的
RecordSet(
记录集
)
类似
,
数据集也是从数据源获取的数据在内存中的表示。区别
: RecordSet
像单个表
, DataSet
像包含一个或多个表的数据库。
与在数据库中的组织方式同样
,
数据集中的数据以记录的方式组织成表。
数据库由表和表之间的关系组成。数据集中的表用
DataTable
对象
表示
, DataTable
对象中包含不少其它对象的集合
,
如
TableRow
和
TableColumn
。
可使用
DataSet
对象以离线的方式来操纵数据
,
这样能够节省系统资源
,
从而提升应用程序的伸缩性。
用户登陆系统的设计与实现
登陆界面
为了实现用户登陆功能,一般在数据库中须要专门创建一个管理员表,用以记录网站用户的基本信息,数据表结构如表
7-1
所示。
根据系统功能需求,结合界面设计和数据库设计,肯定主要事务流程如图
7-2
所示。
1.
用户输入信息的合法性检查
当用户点击了登陆按钮后,将用户名和密码等信息从客户端提交到服务器端,服务器一般须要对用户输入的信息进行合法性检查,如是否为空,是否包含指定的特种信息等。
2.
用户身份的合法性检查
检查用户身份的方法一般是:检查数据库用户表中是否包含指定用户名和密码的用户;
3.
提示信息的处理
当用户输入错误或未查到用户时,一个性能良好的登陆系统应给予恰当的提示,以便用户心中有数。
Code-Behind
技术
网站是构架在计算机网络基础之上的,具备必定客观功能的网络设备、网页等元素的集合体
(100 mod 5)
Trim
InstrRev