|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
有时也搞不懂应该学那种;主要看你以后去的那个公司是使用哪种了。就像王千祥的课上说的:企业应用现在主要就三层(其实也差不多就是MVC):表示层(主要使用html写的,很简单)、业务逻辑层(主要就是应用服务器的)。最后就是数据层(其实就是学习数据库)优秀的习气关于人的发展长短常主要的,优秀的编程习气关于我们编程才能的进步也长短常主要的。我们编程时要有优秀的作风,源代码的逻辑简明明晰,易读易懂是好程序的主要尺度。让我们的程序写得加倍咄咄逼人,加倍活泼对我们的编程是年夜无益处的。对我们的程序进修也能起到事半功倍的感化。编程过程当中恪守的不成文的尺度,关于我们和别人的交换和本人的再进修都是无益有害的。究竟偶然我们写的程序不是只给本人看的,也不是一时髦起,不论今后。好的编码可以使源代码的可读性强且意义分明,与其他言语商定相分歧,而且尽量直不雅。
1.毛病(之外)的处置
程序强健性最基础请求就是程序毛病的处置与捕获,在ASP.NET中,毛病的处置有和其他编程言语一样的机制,可使用Try…Catch…Finally等体例,这一点和ASP比拟具有较年夜的前进。并且,利用这些毛病处置办法,能够年夜年夜进步程序的可读性和程序调试速率,在这几个上风分离的情形下,我们加倍应当注重这一点。
2.字符串的处置
网页计划中,字符串的处置几近是最多见的了。利用ASP.NET今后,字符串的处置比ASP的速率快,并且,在ASP.NET中,专门增添一个字符串处置类StringBulider,利用这个类能够完成一些罕见的字符串操纵,而最次要的,利用StringBuilder能够年夜年夜进步字符串处置速率。
在ASP.NET中,最多见的就是利用“&”来毗连两个字符串:
DimmyOutputStringAsString="Mynameis"
DimmyInputStringAsString="Alex"
myOutputString=myOutputString&myInputString
Response.Write(myoutputString)如今,我们来看看StringBuilder的利用,在利用StringBuilder的时分,我们对字符串能够做一些基础的操纵,好比Append、Replace、Insert、Remove等,如今我们来看详细举例。
(1)StringBuilder中Append的利用
Append和其他言语的Append一样,就是在字符串最初增添其他字符。
DimsbasStringBuilder=NewStringBuilder()
sb.append("<tableborder="1"width="80%">")
Fori=0ToRowCount-1
sb.Append("<tr>")
Fork=0ToColCount-1
sb.Append("<td>")
sb.Append(dt.Rows(i).Item(k,DataRowVersion.Current).toString())
sb.Append("</td>")
Next
sb.Append("<tr>")
Next
sb.Append("</table>")
DimstrOutputasString=sb.ToString()
lblCompany.Text=strOutput在以上的程序中,用Append办法完成了一个表格的输入,必要注重的一点是,StringBulider必需起首利用ToString()办法将其转化为String范例才能够间接输入。在以上的举例中,我们看到的全体是Append一个间接的字符串,实在,这个办法有一个很便利的功效,那就是能够间接Append其他范例的变量,好比能够间接Appemd一个Integer范例的数值,固然,我们输入今后主动转化为一个字符串:
SubPage_Load(SourceAsObject,EAsEventArgs)
DimsbAsSystem.Text.StringBuilder
DimvarotherAsInteger
varother=9999
sb=newSystem.Text.StringBuilder()
sb.append("<fontcolor="blue">能够Append其他范例:</font>")
sb.append(varother)
Response.write(sb.toString())
EndSub(2)字符串中其他办法的利用
我们还可使用其他办法,我们来看看罕见的:
Insert办法,能够在指定地位拔出其他字符,利用办法:Insert(拔出地位,拔出字符);
Remove办法,能够在指定地位删除指定字数字符,利用办法:Remove(实在地位,字符数);
Replace办法,能够交换指定字符,利用办法:replace(被交换字符串,交换字符串)
3.数据库链接Connection和DataReader的封闭
在利用ASP编程的时分,我们就已晓得,在利用数据库毗连今后,必定要将毗连封闭,然后设置为NoThing。在Asp.NET中,我们仍旧必要如许利用,不外,在ASP.NET中,因为利用了ADO.NET,以是,在一些相干的处置方面,实践仍是有一些渺小的区分,而这些区分,常常也就是我们计划的时分最必要注重的。如今,我们经由过程举例,来看看在罕见的ADO.NET操纵中,必要注重哪些成绩。
(1)举例一
DimmyConnectionAsSqlConnection=newSqlConnection(ConfigurationSettings.AppSettings("DSN_pubs"))
DimmyCommandAsSqlCommand=newSqlCommand("Selectpub_id,pub_nameFrompublishers",myConnection)
DimmyDataReaderAsSqlDataReader
Try
myConnection.Open()
myDataReader=myCommand.ExecuteReader(CommandBehavior.CloseConnection)
DropDownList1.DataSource=myDataReader
DropDownList1.DataBind()
CatchmyExceptionAsException
Response.Write("Anerrorhasoccurred:"&myException.ToString())
Finally
IfNotmyDataReaderIsNothingThen
"封闭DataReader
myDataReader.Close()
EndIf
EndTry在以上的举例中,我们注重到,这里只封闭了DataReader,并没有封闭Connection。为何呢?细心察看以上的ExecuteReader办法,本来,设置了ExecuteReader参数,当实行完ExecuteReader今后,会主动封闭Connection。以是,如许设置今后,就没有需要再手动封闭Connection了。
(2)举例二
DimmyConnectionAsSqlConnection=newSqlConnection(ConfigurationSettings.AppSettings("DSN_pubs"))
DimmyCommandAsSqlCommand=newSqlCommand("Selectpub_id,pub_nameFrompublishers",myConnection)
Try
myConnection.Open()
DropDownList1.DataSource=myCommand.ExecuteReader()
DropDownList1.DataBind()
CatchmyExceptionAsException
Response.Write("Anerrorhasoccurred:"&myException.ToString())
Finally
IfNotmyConnectionIsNothingAndAlso((myConnection.StateAndConnectionState.Open)=ConnectionState.Open)Then
myConnection.Close()
EndIf
EndTry在以上的举例中,我们发明,竟然没有封闭DataReader。为何呢?实在下面的代码中,没有间接天生DataReader对象,固然也就无从封闭了。必要注重一点的是,在封闭Connection之前,程序起首判别Connection是不是已翻开,假如没有翻开,也就没需要封闭了。
以前学了大概半年时间的asp(没有机会做大系统,最多是自己对公司系统做些调整和修改还有一些小程序)。应该说开始接触asp.net是今年元月5号的事。现在很想把公司的系统重新用.net来架构,却不知道如何下手。 |
|