asp.net支持多种语言,它的缺省语言将是:visual basic而不是vbscript,这意味着我们可以摆脱vbscript的语言限制,我们的代码将是编译后运行的(而不是原来的解释执行)。
Visual Basic
让VBScript 一边去吧。ASP现在全部用成熟的VB语言来书写。感觉还不错,不是吗?不过,VB有了一些改动。VB中的主要改变,不再有Set & Let,不再有缺省属性,Parenthesis现在被称为SUBS,Arguments需通过缺省设置来实现 BYVAL,Integer 为32位,Long为64位,And" and "Or“ 省略了,通过上面的清单不难发现,VB的许多变动是有实际意义的,也是有明显进步的。
不过,通过上面这些变动却不能改变一个事实,你许多现有的代码将不会正常运作。
我们先看个完整的查询的例子,这个例子也显示了当查询显示没有纪录返回和如何检测返回NULL数据的情况
<%@ OutputCache duration="240"%><%--the above OutputCache directive is pretty slickIt means that for 240 seconds (4 minutes) the page will only read the database onceonly the first user hitting it forces a database read--%><%@ Import Namespace="System.Data" %><%@ Import Namespace="System.Data.ADO" %>
<script language="VB" runat="server">Sub Page_Load(Src As Object, E As EventArgs) Dim DS As DataSetDim MyConnection As ADOConnectionDim MyCommand As ADODataSetCommanddim strconn as stringdim strSQL as string
strconn="DSN=student;uid=student;pwd=magic;database=student"
strSQL="select * from Publishers where state="NY""
MyConnection = New ADOConnection(strconn)MyCommand = New ADODataSetCommand(strSQL,MyConnection)
DS = new DataSet()MyCommand.FillDataSet(ds, "Publishers")
MyDataGrid.DataSource=ds.Tables("Publishers").DefaultViewMyDataGrid.DataBind()End Sub
</script><html><head><title>Grid of New York Data</title></head><body bgcolor="#FFFFFF"><h3><font face="Verdana">New York Data</font></h3>
<ASP:DataGrid id="MyDataGrid" runat="server"Width="100%"BackColor="white" BorderColor="black"ShowFooter="false" CellPadding=3 CellSpacing="0"Font-Name="Verdana"Font-Size="8pt"Headerstyle-BackColor="lightblue"Headerstyle-Font-Size="10pt"Headerstyle-Font-Style="bold"MaintainState="false"/></body></html>
C# (C Sharp)
C # 非常“酷”,这儿有个双关语,在微软的内部代码名称里,C#就被称为 “酷”(具体语法将另文介绍)。如果你是用VB的开发者,就没有必要换用其它的语言,但是用C++ 的开发者会高兴得不得了。我们将在后面看到关于C#的例子
Jscript
如我所知,这也是以前老版本的Jscript。如同VB一样,Jscript也从NGWS runtime中得益不少,并且它也是被编译过的。