本文共 3112 字,大约阅读时间需要 10 分钟。
ASP是在BS学习中接触的,当然和BS有着千丝万缕的关系。BS浏览器服务器,我们利用ASP这个工具可以前台的页面和后台的实现分离开来,从而可以做我们自己的网页。这里还是想啰嗦一下,ASP的全拼是Active Server Pages,动态服务器页面,是强大的web服务器。
自己学习asp这块的内容,如果不总结的感受就是遍地沙子,没有归类,就不好吸收,总结也不是想着自己可以掌握到什么程度,我是想着给自己学的东西一个归属感,帮助自己在之后的学习中更加的清楚。一下是自己的一个对ASP学习的一个理解:
HTTP:HyperText Transfer Protocol,超文本传输协议,是互联网上应用最广泛的一种协议,我们所有的万维网文件都必须遵守这个标准,这里是,就是想告诉大家HTTP是我们做好的网页,别人可以正常访问所要遵循的一个标准。
其实上面的导图是有点问题的,准确的话应该是ADO.NET的一个分支。ADO.NET是在ADO的基础上,又进一步的扩展,ADO.NET是ADO的后继版本,主要目的是在.NET Framework中更容易地创建分布式、数据共享的应用程序,它提供了一个数据访问接口,以便和OLE DB数据源进行通信,如SQL SERVER.应用程序可以使用ADO.Net连接这些数据源,并检索、处理和更新数据。 下面是他们的一些区别(参考):
下面是他们的一些区别(参考):为了更好的认识他们,我们引入代码:在ADO中,我们可以结合红皮书和第一次机房:
Private Sub GetUser() Dim strSQL As String Dim strConn As String Dim objRS As ADODB.Recordset Dim strResult As String '建立连接 strConn = "provider=SQLOLEDB;Initial Catalog=CESHI;" _ & "data source=(local);user id=sa;password=123456" strSQL = "select * from btuser" '创建一个Recordset实例 objRS = New ADODB.Recordset With objRS .cursorlocation = adUserClient .CursorType = adOpenStatic .open(strSQL, strConn) Do Until .EOF strResult = .Fields("firstname").value _ & "" & .Fields("Lastname").value .movenext() Loop End With objRS = Nothing End Sub
在ADO.NET中,我们一直在用这个,应该比较熟:
Dim strSQL As String Dim strConn As String Dim objDA As SqlClient.SqlDataAdapter Dim objDS As New Data.DataSet Dim inCounter As Integer Dim strResult As String Dim objcommand As New SqlCommand strConn = "initial catalog=CESHI;data source=(local);" _ & "user id=sa;password=123456" strSQL = "select * from tbuser" objDA = New SqlDataAdapter(strSQL, strConn) objDA.Fill(objDS) With objDS.Tables(0) For inCounter = 0 To .Rows.Count - 1 strResult = .Rows(inCounter).Item("username").ToString _ & "" & .Rows(inCounter).Item("password").ToString MessageBox.Show(strResult) Next End With
通过对比我们发现,他们的连接字符串和sql语句的用法很相似,区分就在内存上了,是Recordset还是DataSet了。
这个是自己比较好奇,他本身已经封装好了,所有他的一个显著的特征就是接口,他有外漏的接口让我们访问,我们不必知道他的内部是如何实现(尽管想知道的话也可以看到),所以他的内容是通过接口对外访问的。新建一个webService如图所示:
运行,我们直接点击操作名称就可以进入了,这里我们可以认为是对外访问的接口。
这些内容,是如何实现的呢?其实就是一个个的方法,就像酱紫:
[WebMethod] public string AtoB(int sum) { try { //从a中减掉500 this.decrease(sum); //从b中加上500 this.increase(sum); return ("成功"); } catch (Exception) { return ("失败"); } }
分享这个的目的,是感觉特别贴合我们学习的面向对象的这个主线,让我不断的体会。
控件的使用我们不断的领会事件驱动,也不知道是否片面控件可以让这个页面变得有生命力,对于控件自己有详细,感兴趣可以阅读。
我也知道这些只是毛毛雨了,那又如何呢,我们的学习没有,总结也没有完,我们要做的就是不断的学习,不断的总结,不断的分享(一不小心就站在巨人的肩膀上了^~^)