ASP.NET教程之ASP.NET当即上手教程(1)
有理由相信是能提供更出色的性能。很多平台无法支持复杂的编译器,因此需要二次编译来减少本地编译器的复杂度。当然可能做不到java编译器那么简易。1、入手下手1、先容
接待到临ASP.NET当即上手教程。
ASP.NET当即上手教程是由一系列实例和撑持讲授组成的,他的目标是为了闪开发者疾速了解ASP.NET的语法、框架和ASP.NET收集使用程序框架的壮大功效。一切的实例计划的短小而简单了解,能够充实展现ASP.NET的响应功效。在进修完本教程今后,你应当熟习以下内容:
·ASP.NET语法。固然,关于纯熟的ASP开辟者,有些ASP.NET语法元素会很熟习,而有些倒是新框架所独占的。本教程的实例掩盖了一切语法元素的细节。
·ASP.NET布局和特征。本教程先容ASP.NET的特征,这些特征可让开辟者之前所未有的效力创建交互式的、天下级程度的使用程序。
·最好理论。本教程的实例树模了ASP.NET功效的最好路子,同时也制止了潜伏的缺点。
本课本的读者工具程度请求:
假如你之前历来没有过开辟web页的履历,那末本课本不合适你。你应当熟习html和一样平常的web开辟术语。你不必要有过asp的履历,可是你应当熟习交互式页面的观点,包含表单,剧本和数据会见。
消化吸取本课本的实例
本课本是所展现内容的最好理论。每一个实例创建在观点的辨析和后面实例的引伸之上。该实例是一个从复杂到庞大,从单一手艺到使用的完全的系列
2、甚么是ASP.NET
Asp.net是创建在通用言语运转时候库(CLR)上的使用程序框架。他用来在服务器端构立功能壮大的web使用程序。Asp.net供应了几个超出之前web开辟形式的长处:
·加强的功能。Asp.net是运转在服务器真个编译后的CLR代码,而不是像ASP那样注释实行。Asp.net使用提早绑定,立即编译,当地优化弛缓存服务来进步功能。一切这统统,功能远宏大于你以往写的每行代码。
·天下级程度的开辟工具撑持。在VisualStudio.net的集成开辟情况(IDE)中,Asp.net框架由丰厚的工具箱和计划器构成。所见即所得的(WYSIWYG)编纂体例、拖放服务器控件、和主动部署,仅仅是这一壮大工具所供应的一少部分功效。
·壮大而富有弹性。因为asp.net是基于(CLR)的,因而全部.net平台的壮大和富有弹性,一样能够使用于web使用程序开辟者。.net框架的类库、动静和数据会见办理计划,都能够无缝集成到web。Asp.net也是言语中立的,因而你能够选择你最熟习的言语,大概经由过程几种言语来配合完成一个使用。并且,CLR的互用性能够包管你晋级到asp.ent的时分,现存的基于COM的开辟投资仍然保存。
·复杂。Asp.net使实行经常使用的事情变得很简单,好比从复杂的表单提交、客户端考证,到部署和站点设置。比方,asp.net同意你创建用户接口,完成页面和逻辑代码的分别,同时,就像vb的表单实行形式那样来处置事务(也就是说,由页面驱动形式酿成了事务驱动形式)。别的,CLR简化了部署,用来办理代码服务,比方主动参照和渣滓接纳。
·易于办理。Asp.net利用一个基于文本的、分条理的设置体系,它简化了服务器端情况和web使用程序的设置。因为设置信息用纯文本格局保留,新的设置不必要当地办理工具的撑持。这类“零当地撑持”的理念也一样使用到了部署asp.net使用程序。Asp.net使用程序部署到服务器,简化为复制需要的文件到服务器。在部署,乃至交换正在运转的变异代码的时分,也不必要从头启动服务器。
·可伸缩性和无效使用性。Asp.net被计划成可伸缩的,能为集群和多处置器情况计划进步功能。并且,asp.net运转时候亲切监督和办理历程,如许,假如产生了毛病的举动,比方毛病和逝世锁,新的历程会在以后地位创建,来匡助你的使用程序持续处置事务哀求。
·可订制和扩大。Asp.net供应一种优秀的扩大布局,同意开辟者在得当的级别“拔出”他们的代码。现实上,利用本人的编写的组件能够扩大大概交换asp.net运转时候的任何子组件。实行自界说考证或形态服务变得亘古未有的简单。
·平安性。内建的windows考证和每个使用程序的自力设置,你能够以为你的使用程序是平安的。
接上去的asp.net教程权力将向您展现这些观点的实习
3、言语撑持(C#版本)
言语撑持
微软的.net平台如今供应内建的三种言语撑持:C#,VisualBasic,和Jscript。本课本的实习和实例代码展现怎样利用这三种言语创建.net使用程序。关于其他言语的更多得语法信息,请参考.NETFrameworkSDK文档。
上面供应的的代码段匡助你了解本课本中代码实例,和这三种言语之间的差别。
变量声明
以下为援用的内容:
intx;
Strings;
Strings1,s2;
Objecto;
Objectobj=newObject();
publicStringname;
语句
Response.Write("foo");
正文
//这是单行正文
/*这是多行正文*/
会见索引属性
以下为援用的内容:
Strings=Request.QueryString["Name"];
Stringvalue=Request.Cookies["key"];
声明索引属性
以下为援用的内容:
//DefaultIndexedProperty
publicStringthis{
get{
return(String)lookuptable;
}
}
声明复杂属性
以下为援用的内容:
publicStringname{
get{
...
return...;
}
set{
...=value;
}
}
声明和利用列举
以下为援用的内容:
//DeclaretheEnumeration
publicenumMessageSize{
Small=0,
Medium=1,
Large=2
}
//CreateaFieldorProperty
publicMessageSizemsgsize;
//AssigntothepropertyusingtheEnumerationvalues
msgsize=Small;
遍历汇合
以下为援用的内容:
foreach(Stringsincoll){
...
}
声明和利用办法
以下为援用的内容:
//Declareavoidreturnfunction
voidvoidfunction(){
...
}
//Declareafunctionthatreturnsavalue
Stringstringfunction(){
...
return(String)val;
}
//Declareafunctionthattakesandreturnsvalues
Stringparmfunction(Stringa,Stringb){
...
return(String)(a+b);
}
//UsetheFunctions
voidfunction();
Strings1=stringfunction();
Strings2=parmfunction("Hello","World!");
定制属性
以下为援用的内容:
//Stand-aloneattribute
//Attributewithparameters
//Attributewithnamedparameters
数组
以下为援用的内容:
String[]a=newString;
a="1";
a="2";
a="3";
String[][]a=newString;
a="1";
a="2";
a="3";
初始化
以下为援用的内容:
Strings="HelloWorld";
inti=1;
double[]a={3.00,4.00,5.00};
If语句
if(Request.QueryString!=null){
...
}
Case语句
以下为援用的内容:
switch(FirstName){
case"John":
...
break;
case"Paul":
...
break;
case"Ringo":
...
break;
default:
...
break;
}
For轮回
for(inti=0;i<3;i++)
a(i)="test";
While轮回
inti=0;
while(i<3){
Console.WriteLine(i.ToString());
i+=1;
}
非常处置
以下为援用的内容:
try{
//Codethatthrowsexceptions
}catch(OverflowExceptione){
//Catchaspecificexception
}catch(Exceptione){
//Catchthegenericexceptions
}finally{
//Executesomecleanupcode
}
字符串联接
以下为援用的内容:
//UsingStrings
Strings1;
Strings2="hello";
s2+="world";
s1=s2+"!!!";
//UsingStringBuilderclassforperformance
StringBuilders3=newStringBuilder();
s3.Append("hello");
s3.Append("world");
s3.Append("!!!");
事务处置委派
以下为援用的内容:
voidMyButton_Click(Objectsender,
EventArgsE){
...
}
声明事务
以下为援用的内容:
//Createapublicevent
publiceventEventHandlerMyEvent;
//Createamethodforfiringtheevent
protectedvoidOnMyEvent(EventArgse){
MyEvent(this,e);
}
向事务增添或移除事务处置
以下为援用的内容:
Control.Change+=newEventHandler(this.ChangeEventHandler);
Control.Change-=newEventHandler(this.ChangeEventHandler);
机关
以下为援用的内容:
MyObjectobj=(MyObject)Session["SomeValue"];
IMyObjectiObj=obj;
转换
以下为援用的内容:
inti=3;
Strings=i.ToString();
doubled=Double.Parse(s);
带有承继的类界说
以下为援用的内容:
usingSystem;
namespaceMySpace{
publicclassFoo:Bar{
intx;
publicFoo(){x=4;}
publicvoidAdd(intx){this.x+=x;}
overridepublicintGetNum(){returnx;}
}
}
//csc/out:librarycs.dll/t:library
//library.cs
完成接口
以下为援用的内容:
publicclassMyClass:IEnumerable{
...
IEnumeratorIEnumerable.GetEnumerator(){
...
}
}
带有Main办法的类界说
以下为援用的内容:
usingSystem;
publicclassConsoleCS{
publicConsoleCS(){
Console.WriteLine("ObjectCreated");
}
publicstaticvoidMain(String[]args){
Console.WriteLine("HelloWorld");
ConsoleCSccs=newConsoleCS();
}
}
//csc/out:consolecs.exe/t:execonsole.cs
尺度模板
以下为援用的内容:
usingSystem;
publicclassModule{
publicstaticvoidMain(String[]args){
Console.WriteLine("HelloWorld");
}
}
//csc/out:consolecs.exe/t:execonsole.cs
那做企业软件是不是最好用J2EE? ASP.NET可以无缝地与WYSIWYGHTML编辑器和其他编程工具(包括MicrosoftVisualStudio.NET)一起工作。这不仅使得Web开发更加方便,而且还能提供这些工具必须提供的所有优点,包括开发人员可以用来将服务器控件拖放到Web页的GUI和完全集成的调试支持。微软为ASP.net设计了这样一些策略:易于写出结构清晰的代码、代码易于重用和共享、可用编译类语言编写等等,目的是让程序员更容易开发出Web应用,满足计算向Web转移的战略需要。 主流网站开发语言之PHP:PHP的全名非常有趣,它是一个巢状的缩写名称——“PHP:HypertextPreprocessor”,打开缩写还是缩写。PHP是一种HTML内嵌式的语言(就像上面讲的ASP那样)。而PHP独特的语法混合了C,Java,Perl以及PHP式的新语法。它可以比CGI或者Perl更快速地执行动态网页。 asp.net最主要特性包括:◆编程代码更简洁◆网站可实现的功能更强大◆运行效率高◆节省服务器的动作资源 Asp.net:首先来说,Asp.net和Asp没什么关系,看着像是升级版本什么的,其实没什么联系。Asp是脚本编程,用的是ASP语言,而ASP.net用的是C#语言,完全不同的东西。 碰到复杂点的问题都不知道能不能解决,现在有点实力的公司都选择自已在开源的基础上做开发。但没听说过有人在IIS上做改进的,windows、sqlserver集群方面的应用也很少见。 可以看作是VC和Java的混合体吧,尽管MS自己讲C#内核中更多的象VC,但实际上我还是认为它和Java更象一些吧。首先它是面向对象的编程语言,而不是一种脚本,所以它具有面向对象编程语言的一切特性。 虽然在形式上JSP和ASP或PHP看上去很相似——都可以被内嵌在HTML代码中。但是,它的执行方式和ASP或PHP完全不同。在JSP被执行的时候,JSP文件被JSP解释器(JSPParser)转换成Servlet代码,然后Servlet代码被Java编译器编译成.class字节文件,这样就由生成的Servlet来对客户端应答。所以,JSP可以看做是Servlet的脚本语言(ScriptLanguage)版。 代码逻辑混乱,难于管理:由于ASP是脚本语言混合html编程,所以你很难看清代码的逻辑关系,并且随着程序的复杂性增加,使得代码的管理十分困难,甚至超出一个程序员所能达到的管理能力,从而造成出错或这样那样的问题。 大哥拜托,Java在95年就出来了,微软垄断个妹啊,服务器市场微软完全是后后来者,当年都是Unix的市场,现在被WindowsServer和Linux抢下大片,包括数据库也一样。
页:
[1]