简简单单学习ASPNET之四.docx

上传人:b****4 文档编号:6802475 上传时间:2023-05-10 格式:DOCX 页数:20 大小:30.33KB
下载 相关 举报
简简单单学习ASPNET之四.docx_第1页
第1页 / 共20页
简简单单学习ASPNET之四.docx_第2页
第2页 / 共20页
简简单单学习ASPNET之四.docx_第3页
第3页 / 共20页
简简单单学习ASPNET之四.docx_第4页
第4页 / 共20页
简简单单学习ASPNET之四.docx_第5页
第5页 / 共20页
简简单单学习ASPNET之四.docx_第6页
第6页 / 共20页
简简单单学习ASPNET之四.docx_第7页
第7页 / 共20页
简简单单学习ASPNET之四.docx_第8页
第8页 / 共20页
简简单单学习ASPNET之四.docx_第9页
第9页 / 共20页
简简单单学习ASPNET之四.docx_第10页
第10页 / 共20页
简简单单学习ASPNET之四.docx_第11页
第11页 / 共20页
简简单单学习ASPNET之四.docx_第12页
第12页 / 共20页
简简单单学习ASPNET之四.docx_第13页
第13页 / 共20页
简简单单学习ASPNET之四.docx_第14页
第14页 / 共20页
简简单单学习ASPNET之四.docx_第15页
第15页 / 共20页
简简单单学习ASPNET之四.docx_第16页
第16页 / 共20页
简简单单学习ASPNET之四.docx_第17页
第17页 / 共20页
简简单单学习ASPNET之四.docx_第18页
第18页 / 共20页
简简单单学习ASPNET之四.docx_第19页
第19页 / 共20页
简简单单学习ASPNET之四.docx_第20页
第20页 / 共20页
亲,该文档总共20页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

简简单单学习ASPNET之四.docx

《简简单单学习ASPNET之四.docx》由会员分享,可在线阅读,更多相关《简简单单学习ASPNET之四.docx(20页珍藏版)》请在冰点文库上搜索。

简简单单学习ASPNET之四.docx

简简单单学习ASPNET之四

简简单单学习ASP.NET之四

第一章   ASP.NET应用程序概述

本章概要:

本章主要阐述了VS2008在开发B/S结构应用程序时为.NET开发者所提供的许多优越之处,并且向大家介绍应用程序事件、页面事件等必备知识。

知识结构:

 

 

 

第一节   使用VS2008开发ASP.NET应用程序

ASP.NET框架与WEBFORM基础

对于全世界来说.NET是一个跨时代的技术产物,它集合了许多种优秀的技术于一身,创造性的使各种开发得到了高效的应用,而ASP.NET恰恰是.NET技术在WEB开发领域的一种延伸,它富有开创的使用了WebForm技术,将以忘复杂而难以应付的WEB开发变的简单和高效,想要学习ASP.NET就必须得对现在的各种WEB流行技术进行了解,才能真正的体验它的高效与强大。

下面我将带着大家来回顾一下B/S开发的历史。

                                        

◆∙HTML与HTML表单(静态页面)

其实对于用于静态页面来说,大家并不是很陌生,它们是用一些HTML的标签与表单来组成的简单页面,这些页面,一般是不具有交互功能的,当然你可以在其中加入一些JavaScript脚本,来实现简单的交互应用,但是它们并不能实现一些复杂的业务处理,比如需要将用用户填写的表单保存在总公司的数据库中等等这样的复杂需求。

◆∙服务器端编程(动态页面)

服务器端开发的主要意义在于所有的页面请求是在服务器端进行处理的,大多数时候的请求都是很简单的一个“把这个文件发给我”。

浏览器随后会按适当的形式解释这个文件:

作为HTML页、一幅图、一个程序片、一个脚本程序等等。

向服务器发出的较复杂的请求通常涉及到对一个数据库进行操作(事务处理)。

其中最常见的就是发出一个数据库检索命令,得到结果后,服务器会把它格式化成HTML页,并作为结果传回来(当然,假如客户通过某种脚本语言具有了更高的智能,那么原始数据就能在客户端发送和格式化;这样做速度可以更快,也能减轻服务器的负担)。

另外,有时需要在数据库中注册自己的名字(比如加入一个组时),或者向服务器发出一份订单,这就涉及到对那个数据库的修改。

这类服务器请求必须通过服务器端的一些代码进行,我们称其为“服务器端的编程”。

在传统意义上,服务器端编程是用PHP脚本或JSP进行的,但更复杂的系统已经出现。

其中包括基于ASP.NET的Web服务器->IIS,它允许我们用.NET语言进行所有服务器端编程。

见图2-1

2.   启始页

当首次打开VS2008时,将会看到图2.1所示的VS2008窗口。

窗口顶部是典型的Windows菜单项及工具栏,应用程序的左边是用于访问工具和控件,以及在开发环境下连接其他服务器和数据库功能的选项卡,它们分别是工具箱和服务器资源管理器。

图2-1

打开VS2008,在起始页中单击文件->新建->项目后,就会看到VS2008可以建立的项目,在VS2008中可以分别为.Net2.0.Net3.0.Net3.5三个不同的.Net框架版本来进行开发,保证了Vs2005版本的用户在升级后也可以用以前的.Net版本进行开发。

新建项目见图2-2.

图2.-2

 

3.   创建第一个Web页面

我们在新建项目中选择Web项目->ASP.NET应用程序后点击确定,您就顺利建了第一应用程序了。

建立后Vs2008后自动为您生成一个默认的ASP.NET页面(Default.aspx)。

见图2.3。

在所有的语言学习起始都是通过实现一个HelloWorld来进行第一个样例的,我们学习ASP.NET也一样,我们也建立一个HelloWorldWeb应用程序。

实现过程

1、         从左侧的工具箱中拖一个按钮到Web窗体中,然后在属性页中的Text属性设定为”ClickMe”。

2、         双击此按钮Vs2008会自动将其跳转到Default.aspx.cs这个文件中。

加入以下代码,完成设计工作。

Default.aspx页面控件标签:

//www.w3.org/1999/xhtml">

   无标题页

   

   

       

ButtonID="Button1"runat="server"Text="ClickMe"

           onclick="Button1_Click"/>

   

   

Default.aspx.cs后置代码实现:

publicpartialclass_Default:

System.Web.UI.Page

 {

       protectedvoidPage_Load(objectsender,EventArgse)

       {

       }

       protectedvoidButton1_Click(objectsender,EventArgse)

       {

           Response.Write("大家好,欢迎大家使有ASP.NET开发");

       }

 }

4.   项目和文件

一个项目包含内容文件、源代码文件及其类型的文件,例如,数据源和图片,通常情况下,项目内容被编译到程序集中,例如,可执行文件、动态链接库文件。

多数Web页面或用户控件的内容由服务器控件声明和XHTML组成。

这些内容连同一些必要的指令及脚本组成了页面和用户控件的内容文件。

Web页面的内容文件以.aspx为扩展名,用户控件则以.ascx为扩展名。

ASP.NET还包含了引起其他类型的内容文件,表2-4列出了这些内容文件。

表2-4内容文件类型

文件类型

扩展名

页面

.aspx

用户控件

.ascx

Web服务

.asmx

母版页

.master

解析WebForm

在Vs2008的页面设计模式中有三种工作模式,在大部分工作中我们都比较喜欢用设计模式来进行页面控件的设计,因为这实在是太方便了,只需要一拖一撤,不需要你会XHTML知识,就可以将一个控件放置在WebForm中,Vs2008会自动帮你来生成服务器与XHTML相对应的标签。

但是随着你对ASP.NET的了解与熟练,你会发现通过设计页面来实现控件的微调与属性的设计就没有那么方便了,毕竟Vs2008不是一个网页设计工具,它在设计中是有一定缺陷的。

这时我们就需要通过源页面这种设计模式来进行页面控件与属性的控件了。

1.   WebForm的内容

如果你以前一点儿html的基础都没有的话,可能这个页面中的内容会让你有点头痛,反之如果你有一些html的基础的话,你看这个页面你又会感觉这个页面有点奇怪,主要是因为这个页面并不是100%HTML标签组成的,因为这个文档中包含了一些扩展的ASP.NET控件标签。

基本上每一个页面都包含了标准的Html标签比如和,你可以在页面中插入比如

或tables等。

在下面我列出了一个典型的ASP.Net源页面,其中对于非HTML标准标签我采用了黑体来重点显示:

Default.aspx

<%@Page

Language="C#"

AutoEventWireup="true"CodeBehind="Default.aspx.cs"

Inherits="WebApplication11._Default"%>

DOCTYPEhtmlPUBLIC"-//W3C//DTDXHTML1.0Transitional//EN"               "http:

//www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

//www.w3.org/1999/xhtml">

   无标题页

   

   

       

LabelID="Label1"runat="server"Text="Label">

Label>

       

TextBoxID="TextBox1"runat="server">

TextBox>

       

ButtonID="Button1"runat="server"Text="Button"/>

   

   

上面的页面经过ASP.NET引擎解释后,所有服务器端控件会被解释为标准的HTML返回到客户端,服务器端的优势在于其具有普通控件所无法比拟的服务器端事件支持功能。

2.   Page页面指令

Default.aspx中第一行就是一个Page页面指令,它主要是向当前页面声明一些相关的属性。

<%@Page

Language="C#"

AutoEventWireup="true"CodeBehind="Default.aspx.cs"

Inherits="WebApplication11._Default"%>

相关属性解释如下:

属性

说明

Language

VB/C#/JS

内联代码所使用的编程语言

AutoEventWireup

True、false

启用或者禁用自动绑定页的事件处理方法。

这些方法的命名规范为page_event

CodeBehind

文件名

VS2008所使用代码隐藏文件的名字

Inherits

类名

供页继承的代码隐藏类

3.   Doctype类型

在使用VS2008的时候,在你建立一个新的ASP.NET应用程序后,选中代码模式,会发现DOCTYPE这个单词,这就是DOCTYPE(documenttype,文档类型)声明,用来说明你用的XHTML是什么版本。

但是在XHTML中DOCTYPE声明是必不可缺少的,它告诉浏览器和确认服务,该文档遵循哪一个xhtml版本.如果你没有设定文档中的DOCTYPE声明,那么所设计的文档就不能正常显示.DOCTYPE声明中的关键部分是DTD(DocumentTypeDefinition,文档类型定义),它告诉浏览器该文档遵循的是那一个xhtml版本,面目前xhtml有以下三个版本:

  过渡型(Transitional):

比较宽松的DTD类型,依然能够使用html中的标记(要符合xhtml的书写规范),这个版本也是目前比较流行的.它的标记如下:

DOCTYPEhtmlPUBLIC"-//W3C//DTDXHTML1.0Transitional//EN"        "http:

//www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

  

严格型(Strict):

只允许使用纯xhtml,主要使用css(样式单)和格式化元素编写文档,这个版本是标准的xhtml.它的标记如下:

DOCTYPEhtmlPUBLIC"-//W3C//DTDXHTML1.0Strict//EN"   "http:

//www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

  框架型(Frameset):

在使用框架时定义的类型,支持需要使用框架的元素.它的标记如下:

DOCTYPEhtmlPUBLIC"-//W3C//DTDXHTML1.0Frameset//EN"   "http:

//www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">

  DOCTYPE声明必须放在每一个xhtml文档顶部(就是代码模式下的首行),在所在代码和标识之上.

  选择一种适合自己的DOCTYPE声明是制作xhtml的第一步.如果你是刚刚接触xhtml,那么推荐你使用过渡型的声明;如果你对xhtml已经有了深入的了解,那么严格型是当仁不让的选择。

编写代码

1.   Code-Behind模式

“CodeBehind”就是所谓的代码分离。

在一般的ASP.NET文件中,如果采用“CodeBehind”技术的话,一般是用二种文件来创建一个ASP.NET的页面,其中一种是页面文件,以.aspx或者.ascx为扩展名,而另外一种是程序代码文件,一般以.vb或者.cs为扩展名。

“CodeBehind”把界面代码和程序代码以不同的文件分离开,对于代码的重复使用,程序的调试和维护都是革命性的。

特别是在ASP.NET中,它采用了面向对象的方式,子页面的逻辑可以从父页面中继承过来,如果还是按照以前的方式的话,不可避免就将页面的内容都要继承过来。

这样将造成无法进行模块设计。

和ASP相比,ASP程序是把界面设计和程序设计混合在一起的(一般称其为“CodeBeside”方式),因此当开发人员要修改应用程序界面布局的时候,就往往需要更改大量与界面无关的代码,如果对于代码量很大的程序,就是一项工作量不小的事情。

用“CodeBehind”还有一个优点就是可以利用这种技术来有效的保护代码。

这对于程序的安全性来说也是一个提高。

在VisualStudio.NET写的Web窗体都是用“CodeBehind”方式写的,如果不用VisualStudio.NET进行开发的时候,可以使用和ASP类似的方式,即代码嵌入到页面中去。

2.   添加事件

在ASP.NET中给控件添加事件有三种方法:

◆∙属性窗体设置

首先选择一个要添加事件的控件,选择之后在属性窗体中选择事件页,就可以为其添加一个事件了,见下图。

◆∙点击按钮

选择一个要添加事件的控件,双击此控件就可以为此控件添加一个默认的事件,但这种方式是有局限性的。

具体操作见下图。

◆∙代码编写

这种方式是最传统的也是最有效的,首先在ASPX页面中选中要添加事件的控件,然后在控件中添加一个事件,之后再用手工的方式在后置代码页中手工添加所需的事件即可。

ButtonID="Button1"runat="server"Text="Button"OnClick="Button1_Click"/>

protectedvoidButton1_Click(objectsender,EventArgse)

{

TextBox1.Text="Hereissomesampletext.";

}

3.   智能提示

VisualStudio提供的许多智能技术主要来源于IntelliSense。

它提供了一种类似于微软Office一类所提供的语法检测技术。

开发人员可以用代码编辑器来添加、格式化和编辑代码。

  

对代码编辑器的改进包括更好的IntelliSense、代码段、智能标签和附加的格式选项。

IntelliSense可以帮助开发人员正确和高效地输入代码,它在将输入代码所需要的按键次数减少到最小的同时提高了开发人员的准确度。

首先选择需要围绕的文本,打开在选定文本上的一个快捷菜单并选择“外侧代码”命令,“外侧代码”命令将显示完成列表,选取将要用来围绕选定文本的项。

已保存代码突出显示为绿色,未保存代码用黄色来标记,自从源文件被打开以来未改变过的原始代码不突出显示。

◆∙大纲视图

大纲视图可以允许VisualStudio可以在代码编辑中将一个类、结构、命名空间折叠成一行,并只显示类名、结构名或者命令空间,这种智能的视图有利于在编写大量代码的情况下简化代码页面,使其看起来比较清爽。

◆∙成员智能提示

VisualStudio可以很清松实现代码的编写,初学者在学习编程之初,最大的一个烦恼就是忘记各种类库与方法名称,在VistualStudio中当你录入一个类或者一个对象时,它会自动的显示出可以使用的所有方法,这种功能是非常强的,根据笔者多年开发的经验,现在还没有那一种软件开发工具能与微软的InteilSense来匹敌,即便是现在非常流行的Java开发工具Eclipse和VisualStudio比起来也逊色不少。

◆∙InteilSense的设置

对于InteilSense的设置,我们可以选择工具->选项菜单进行设置即可。

第三章WEBFORM开发基础

本章概要:

本章主要向大家介绍一些做为ASP.NET开发人员必须了解的核心开发内容。

我们会向大家介绍ASP.NET开发模型、系统文件、和服务器端控件等等,同时我们也将会学习到如何将一个普通的HTML转换成为一个ASP.NETWEB应用程序,在最后我们会讨论一下服务器端事件.

知识结构:

 

第一节   简析ASP.NET应用程序

其实对WEB应用程序的概念是很难以界定的,它不像传统的桌面应用程序(我们只需要运行.exe文件即可),概括的来说一个WEB应用程序由WEB页、文档、代码、对象、可执行程序、图像以及IIS虚拟目录或子目录中的其他资源组成,换而言之,WEB应用程序要么是一个站点、要么是一个WEB服务。

每一个WEB应用程序都有自已独立的资源与配置,WEB应用程序是不能共享来之于其他WEB应用程序的资源与配置的,从技术上来说,每一个WEB应用程序都有一个属于自已的应用程序域,这样的好处就是当一个WEB应用程序出现了崩溃时,不会影响到其他应用程序。

应用程序域在内存中是互相独立。

下图就向大家展现了一个WEB应用程序在内存中的布局模式

◆∙ASP.NET文件类型

在ASP.NET中有许多的文件类型,对于这些文件类型的作用请见下表:

后缀

说明

.aspx

一个ASP.NETWEB应用程序页面,主要包括了一些页面控件、CSS文件和大部分表示层的东西,用户也主要是通过这个文件来访问ASP.NET应用程序

.ascx

一个ASP.NET用户控件,我们将再后面学习到

.asmx

一个WEBSERVICE页面请求,我们将再后面学习到

Web.config

ASP.NETWEB应用程序的配置文件

Global.asax

一个全局页面事件控件文件

.CS

代码后置文件,主要用于放置页面逻辑

◆∙ASP.NET应用程序目录

每一个WEB应用程序都应该有一个精心策划的目录结构,比如说你可能将所有的图片文件放在一个Image目录中。

在VS2008中包含一些系统内置的目录,这些目录都有自已所特有的意义与作用。

目录

说明

Bin

包含了所有ASP.NET中的编译组件。

App_Code

包含了所有你需要动态编译的应用程序组件

App_GlobalResources

存储了WEB的全局资源文件,可以通过这个目录来实现多语言支持

App_LocalResources

其作用与App_GlobalResources作用有点类似,但主要是针对本地资源进行管理

App_Data

用于存储数据文件的目录

App_themes

用于存放样式模板文件

服务器端控件

ASP.NET以一种引人注目的方式来进行WEB程序开发,在以往的WEB开发模式中,程序员在开发WEB应用程序前必须先要了解与掌握HTML与一些WEB页面设计工作才可以开始进行开发,然后根据其要求进行修改,之后让其他动态语来生成这段HTML。

  ASP.NET通过了服务器端控件解决了这个问题,这些控件可以自动化的创建与配置,当它们在服务器端运行后会自动的生成所需要的HTML代码返回给客户端。

甚至更好的是我们可以把ASP.NET像传统的VB一样进行控件的拖放、事件的添加,大大的减少了服务器端开发的难度。

  在前面一节中,我们建立一个拖放了一些控件建立了一个非常简单的WEB应用程序,实际上ASP.NET提供了二种类型的服务器端控件,这二种不同的控件在服务器端发挥着自已不同的作用。

  HTML服务器端控件:

这些控件是运行于服务器端的等价于HTML控件,当然做为一个老手来说还是更喜欢使用Html,因为这样来的更直接一些,HTML服务器端控件的出现就是为了解决以前一个传统的WEB应用程序向ASP.NET应用程序过渡的问题,因为它们之间实在是太像了。

  Web控件和Html控件虽然好多功能相同并且长得很像,但是它们的内部实现机制是完全不一样的,Web控件要比Html控件执行效率要好。

服务器端控件:

服务器端控件看起来有点像HTML服务器端控件,但是它提供了更加丰富的对象模型与样式处理,它也提供了非常多的事件处理功能,WEB服务器端控件也提供了一些看起来不像HTML标签一样的控件,比如GridView、Calendar、Validation控件等等。

4.   转化HTML页面到ASP.NET页面

下面我将向大家展示如何转化一个标准的HTML页面到ASP.NET页面中。

首先我们先做一个标准的HTML表单页面出来。

DOCTYPEhtmlPUBLIC"-//W3C//DTDXHTML1.1//EN"

 "http:

//www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">

//www.w3.org/1999/xhtml">

    转换工具

    

    转换:

 

     美元到人民币.



    

   

看样子这个HTML表单什么功能都没有提供,只是给了用户一个界面而以,现在我们要把这个HTML页面转化成为一个ASP.NET页面,转化是非常简单的,只需要将所有的Form加上runat这个标签,所有的输入控件加入runat这个标签基础上就可以了。

以下就是转化之后的代码。

<%@PageLanguage="C#"AutoEventWireup="true"

        CodeFile="CurrencyConverter.aspx.cs"

        Inherits="CurrencyConverter"%>

DOCTYPEhtmlPUBLIC"-//W3C//DTDXHTML1.1//EN"

         "http:

//www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">

//www.w3.org/1999/xhtml">

     转化程序

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

当前位置:首页 > 解决方案 > 学习计划

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2