小妖女 发表于 2015-1-16 22:31:47

ASP.NET教程之ASP.NET:利用DataView工具显现数据

我觉得这个学习方法很重要。初学者应该跟我一样有同样一个毛病。那就是急于求成。很想就自己做出个小小的系统来。可真要动手,却又茫然而不知所措。为什么会这样呢?因为我们没有耐心去学习基础知识。写根本看不到什么效果的测试代码。asp.net|工具|数据|显现在进修DataSet工具的时分,我们碰到一个观点:DataView。该工具暗示对DataSet中的数据表的一种检察体例,体系默许的体例是将数据以表格的情势分列,而且数据是依据从数据表中读取数据时行分列的按次,一般和触及数据库时的SortOrder或是在SQL语句中界说的分列根据(升序或降序等)。利用DataView时分,能够依据分歧的实践情形,来利用分歧的排序根据(Sort)、过滤前提(Filter)或是查找办法(Search)。
上面这个实例,我们将使用DataView工具,显现统一个数据库中的分歧数据。
在Adodotnetweb项目里,增加一个Web窗体定名为DataView.aspx,并增加三个Button控件,分离时Button1(Text=”显现全体数据”)、Button2(Text=”只显现男生数据”)和Button3(Text=”只显现女生数据”),增加一个DataGrid控件,定名为DataView.aspx,计划窗口如.11所示。



.11DataView.aspx的计划窗口
切换至DataView.aspx的HTML窗口,次要HTML代码以下:
<formid="Form1"method="post"runat="server">
<FONTface="宋体">使用DataView过滤数据
<asp:Buttonid="Button1"style="Z-INDEX:101;LEFT:8px;POSITION:absolute;TOP:40px"runat="server"
Text="显现全体数据"Width="105px"Height="32px"></asp:Button>
<asp:Buttonid="Button2"style="Z-INDEX:102;LEFT:112px;POSITION:absolute;TOP:40px"runat="server"
Text="只显现男生数据"Width="105px"Height="32px"></asp:Button>
<asp:Buttonid="Button3"style="Z-INDEX:103;LEFT:216px;POSITION:absolute;TOP:40px"runat="server"
Text="只显现女生数据"Width="105"Height="32"></asp:Button>
<asp:DataGridid="DataGrid1"style="Z-INDEX:104;LEFT:8px;POSITION:absolute;TOP:80px"runat="server"
Width="328px"Height="128px"Font-Size="X-Small"></asp:DataGrid></FONT>
</form>
DataView.aspx的逻辑代码以下:
--------codebegin-------
ImportsSystem.Web
ImportsSystem.Data
PublicClassDataView
InheritsSystem.Web.UI.Page
#Region"Web窗体计划器天生的代码"
此处省略了窗体计划器天生的代码,以勤俭篇幅
#EndRegion
PublicrowfilterAsString="null"
声明该WebForm的全局变量,用来保留DataView工具的过滤前提,
初始化默许为null,即不外滤
PrivateSubPage_Load(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesMyBase.Load
在此处安排初始化页的用户代码
挪用或往数据的历程
getdata()
EndSub
编写通用历程getdata,该历程用于或往数据,并依据过滤前提天生视图
Subgetdata()
在此处安排初始化页的用户代码
DimconnstrAsString声明数据库毗连字符
DimmyconAsOleDb.OleDbConnection
由于利用Aeecss数据库,以是声明OleDConnention工具
DimmycmdAsOleDb.OleDbDataAdapter
声明DataAdapter工具
DimmysqlAsString
声明Command命令的SQL字符串
Try
connstr="provider=microsoft.jet.oledb.4.0;datasource="+Server.MapPath(".")+"StudentInfor.mdb"
为毗连字符串赋值
mycon=NewOleDb.OleDbConnection(connstr)
实例化Connection工具
mysql="Select*fromstudent"
设置SQL语句,即查询数据库中一切内容
mycmd=NewOleDb.OleDbDataAdapter(mysql,mycon)
实例化DataAdapter工具
DimmydatasetAsData.DataSet
声明DataSet工具
mydataset=NewData.DataSet
实例化DataSet工具
mycmd.Fill(mydataset,"student")
使用DataAdapter工具的Fill办法添补mydataset工具,
添补到mydataset中的数据表称号为student
DimdvAsData.DataView
dv=NewData.DataView(mydataset.Tables("student"))
mydataset.Tables(0)暗示视图创建在哪个数据表上,
Tables(0)暗示在DataSet里数据表的索引项,从0入手下手,
这条语句同等与dv=NewData.DataView(mydataset.Tables("student"))
判别过滤前提,然后依据过滤前提天生视图
SelectCaserowfilter
Case"null"
假如是"null",即为不外虑
Case"男"
dv.RowFilter="sex=男"
只显现男生数据
Case"女"
dv.RowFilter="sex=女"
只显现女生数据
EndSelect
DataGrid1.DataSource=dv
DataGrid1控件增加数据源,即mydataset工具
DataGrid1控件指定命据表
DataGrid1.DataBind()
CatchexAsException
假如呈现毛病,输入毛病信息
Response.Write("程序呈现毛病,毛病信息以下:<br>"&ex.Message)
Finally
mycon.Close()封闭数据毗连
EndTry
EndSub
PrivateSubButton1_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesButton1.Click
rowfilter="null"
getdata()
EndSub
PrivateSubButton2_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesButton2.Click
rowfilter="男"
getdata()
EndSub
PrivateSubButton3_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesButton3.Click
rowfilter="女"
getdata()
EndSub
EndClass
-------codeend-------------
保留编译后,经由过程扫瞄器预览,如.12所示。


.12DataView.aspx运转效果
固然,假如只是为了过滤数据,完整能够在SQL语句里到场”WhereSex=’男’”。DataView的功效是很丰厚的,它可使用多种复合把持项绑定到统一个数据表上。有乐趣的读者能够编写代码来考证,篇幅无限,这里就不再举例演示。
8.4本章小结
本章具体的先容了ADO.NET数据会见手艺。ADO.NET数据库会见手艺是新一代的数据存取手艺,它接纳离线的体例从数据库中存取数据,进步了散布式使用程序的效力和扩大性。ADO.NET的关头手艺式DataSet数据模子,在ADO.NET里,一切程序是以数据为中央的,经由过程对XML的撑持,使得ADO.NET具有优秀的扩大性和兼容性。经由过程DataSet类的内存数据库手艺,使得对服务器资本的开支降到了最低。而DataSet工具经由过程对数据格局到XML的转换,能够十拿九稳地穿透公司防火墙,或举行举行异构节点的数据传输。
在ASP.NET里,ADO.NET数据库会见手艺是数据操纵的中心和基本,在分离ASP.NET的数据绑定控件利用,将会高效地创建企业数据库使用情况。鄙人一章,我们将具体进修数据绑定控件。
就安全性而言,Java已经远远低于VB.NET,更无法与安全性著称的C#相比。

山那边是海 发表于 2015-1-19 16:10:23

由于CGI程序每响应一个客户就会打开一个新的进程,所以,当有多个用户同时进行CGI请求的时候,服务器就会打开多个进程,这样就加重了服务器的负担,使服务器的执行效率变得越来越低下。

飘飘悠悠 发表于 2015-1-28 08:03:45

ASP.Net摆脱了以前ASP使用脚本语言来编程的缺点,理论上可以使用任何编程语言包括C++,VB,JS等等,当然,最合适的编程语言还是MS为.NetFrmaework专门推出的C(读csharp)。

第二个灵魂 发表于 2015-2-5 20:00:25

使用普通的文本编辑器编写,如记事本就可以完成。由脚本在服务器上而不是客户端运行,ASP所使用的脚本语言都在服务端上运行,用户端的浏览器不需要提供任何别的支持,这样大提高了用户与服务器之间的交互的速度。

精灵巫婆 发表于 2015-2-13 10:40:38

当然我们在选择Asp.net主机是,除了要考虑服务提供商在版本是否是实时更新以外,机房的环境和配置也是非常重要的,通常选择骨干网的机房,在速度和稳定性上会非常有保证。

飘灵儿 发表于 2015-3-3 20:29:38

比如封装性、继承性、多态性等等,这就解决了刚才谈到的ASP的那些弱点。封装性使得代码逻辑清晰,易于管理,并且应用到ASP.Net上就可以使业务逻辑和Html页面分离,这样无论页面原型如何改变。

海妖 发表于 2015-3-11 13:28:47

ASP(ActiveServerPages)是Microsfot公司1996年11月推出的WEB应用程序开发技术,它既不是一种程序语言,也不是一种开发工具,而是一种技术框架,不须使用微软的产品就能编写它的代码。

小妖女 发表于 2015-3-18 20:19:05

ASP.NET:ASP.net是Microsoft.net的一部分,作为战略产品,不仅仅是ActiveServerPage(ASP)的下一个版本;它还提供了一个统一的Web开发模型,其中包括开发人员生成企业级Web应用程序所需的各种服务。ASP.NET的语法在很大程度上与ASP兼容,同时它还提供一种新的编程模型和结构,可生成伸缩性和稳定性更好的应用程序,并提供更好的安全保护。

再见西城 发表于 2015-3-26 13:53:32

ASP在执行的时候,是由IIS调用程序引擎,解释执行嵌在HTML中的ASP代码,最终将结果和原来的HTML一同送往客户端。
页: [1]
查看完整版本: ASP.NET教程之ASP.NET:利用DataView工具显现数据