ASP.NET WEB FORM
1. 网络应用程序开发的历史回顾
1.1 网络应用程序开发的历史与现在
l 网络应用程序的开发是随着网络编程语言与B/S架构程序出现而
在网络应用程序开发的B/S架构之前我们的网络应用程序都是C/S架构,这种架构是由客户端和服务端构成的简单的结构。其中客户端是应用程序,譬如用VB,C++开发的一些应用程序。这些应用程序放到客户端与数据库进行通信,负责处理本地的一些业务和逻辑。后来发现C/S构架程序存在一定的问题,譬如更新比较困难,部署比较麻烦,维护非常耗时。遇到客户端出现问题时、客户端升级时将会花费很大的开支。基于一些这样的考虑,产生了一种叫做B/S架构应用程序。B/S架构应用程序客户端不再是一个单独的程序,而是放在浏览器里面。我们通过浏览器访问Internet,Internet一端就是我们的服务器,服务器来接受用户所提供的响应。所有的交互都在浏览器内完成。这种架构的好处就是他的升级非常容易,维护简单。对用户来说,他只要有一个浏览器就可以完成一切客户端操作,而对于服务器端来说,一旦要升级,或者多程序一部分进行改造,只需要在服务器端进行修改。因为B/S构架应用程序所有的操作都是在浏览器中进行,所以在应用程序功能上会受到一定的影像。譬如说在访问本地硬盘时要受到一定的安全限制,调动通信的时候可能有问题。基于这些考虑提出了Smart Client技术,Smart Client简单来说就是通过C/S的应用程序,调用服务器端的方法。这样,当应用程序修改的时候只需要修改服务器端。客户端是一个单独的应用程序,但又不是一个简单的IE,他是一个新的软件架构体系。
l 早期三大网络编程语言ASP,PHP,JSP之比较
早期三大网络编程语言ASP,PHP,JSP,这三种编程语言分别依托为不同的背景。ASP依托于微软,主要使用VB Script和Java Script的脚本语言来做一些简单的操作,然后完成一些应用逻辑。PHP是一种类C语言,他的语言出生于C语言。JSP是一个基于Java的一个产品,基本上使用的是Java语言来做描述语言。这三种语言各有优越。
l .net平台的诞生与发展---ASP.net的出现
在.net出现以来结束了这三种语言的斗争场面。Asp.net的出现可以说是B/S构架应用程序开发的一场革命。
l .net 2.0的发展,ASP.net的重生
推出.net 2.0以后可是说是对ASP.Net的一场革命。它给ASP.Net赋予了新的意义。
1.2 最早的互动解决方案HTML控件与JavaScript
l 在没有服务器端脚本的时代,HTML+JavaScript是动态网站的主要解决方案
l JavaScript可以声明变量,进行简单的计算,并借助DHTML对象,实现简单的互动
计算器示例:
<html>
请输入第一个数字<input type="text" name = "no1">
请输入第二个数字<input type="text" name = "no2">
<input type = "button" name = "Subnit" value="计算" onclick="add()">
<script language="javaScript">
function add()
{
//document.write(document.all.no1.value+"+"+document.all.no2.value+"=");
document.write(parseInt(document.all.no1.value)+ parseInt(document.all.no2.value));
}
</script>
</html>
2. ASP.Net服务器端控件
2.1 ASP服务器端应用
l 通过ASP来实现服务器端处理
l ASP可以同样实现对用户输入或者操作的响应,只是响应放在服务器端点。
l 下面演示的例子和使用HTML+JavaScript的功能是完全一致的,只是响应代码放在了服务器端。
计算器示例:<%=request(“num1”)%>+ <%=request(“num2”)%>= <%=cint(request(“num1”))+ cint(request(“num1”))%>>
2.2 ASP.Net服务器端控件
l ASP.NET提供了近80种服务端控件,其中包括ASP.NET 1.1的30个以及ASP.NET 2.0的50个新控件
l ASP.NET提供了一个开放式构架允许用户添加新的自定制控件
2.3 常用ASP.NET服务器端控件
Lable |
标签 |
TextBox |
文本框 |
Checkbox |
多选框 |
Redio Button |
单选框 |
Image |
图片框 |
Button控件
Button |
普通按钮 |
Link Button |
带链接的按钮 |
Image Button |
带图片的按钮 |
2.4 使用以上基本控件
l 通过使用以上基本控件,可以很方便的实现刚才的计算器示例
Lable3.Text = (Convert.toInt32(TextBox1.Text) + Convert.toInt32(TextBox2.Text)).ToString()
2.5 列表框控件
l 使用列表框控件可以实现用户选择输入
l 很多情况下需要用户在限定的范围内做选择
l 列表框可以完成多极互动
2.6 List控件
List Box |
通用列表框 |
Drop Down List |
下拉列表框 |
Check Button List |
复选列表框 |
Radio Button List |
单选列表框 |
Label4.Text = ListBox1.SelectedValue;
2.7 认证控件
l 认证控件可以帮助程序员对用户的输入进行确认。
l 比如可以确认用户输入的合法性。
Validation控件
RequriedField Validator |
必须输入检查 |
Regular Expression validator |
正则表达式检查 |
Compare validator |
比较检查 |
Custom validator |
自定义检查 |
2.8 用户注册示例
l 示例一使用HTML+JavaScript来显示用户输入判断
l 示例二使用认证控件实现用户输入判断
第一个ASP.NET2.0应用程序-计算器示例
3. 内嵌代码与后置代码的区别
l ASP.NET内嵌代码
直接把代码放到aspax文件里面。
l ASP.NET后置代码
将代码单独放到一个文件里面。
l ASP.NET代码放置方式的比较
编译方式没有什么不同。只是在维护的时候的方便性考虑。不提倡内嵌代码。
4. 用户自定义控件
l .NET中支持用户开发自定义的控件,以丰富程序
l 自定义控件的开发非常方便
l 演示用户开发自定义控件
添加新项->Web 用户控件->绘制控件->拖动到需要的窗口中。
Label1.Text = DateTime.Now.ToLongTimeString();
Label2.Text = DateTime.Now.ToLongDateString();
private Color FCl = Color.Black;
用户自定义控件开发例子:
5. 总结
l 回顾了B/S架构的开发历史
l 熟悉了VS2005开发应用ASP.NET的基本方法
l 了解用户定制控件