仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 531|回复: 8
打印 上一主题 下一主题

[学习教程] ASP.NET编程:ASP.NET无穷分类

[复制链接]
蒙在股里 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-16 22:36:08 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
说句实话,Java跨平台根本就不是外行人想想的那种,一次编译,处处运行。asp.net入手下手在网上查找到asp的无穷分类,可是asp.net的几近找不到,找到的也是跟TreeView分离起来的.
找到asp版本的代码有几种,本来都差未几是接纳递回算法.
个中表布局都是以下:
表称号是ClassName
id主键
sid对应的父类的id
ClassName对应种别的称号.
代码段一:
1functionloadNextType(upid,rank)
2dimrs
3setrs="select*fromclassnamewheresid="&upid
4dowhilenotrs.eof
5loadNextType=loadNextType&rs("ClassName")&"<br>"&string("-",rank)&loadNextType(rs("id"),rank+1)
6rs.movenext
7loop
8endfunction挪用时:response.write(loadNextType(0,0))
别的一段代码就跟下面道理就一样的.只不外是到场了树型布局的显现体例.
代码段二:
1界说第一级分类
2submainfl()
3dimrs
4setrs=conn.execute("selectid,F_id,F_namefromClassNaewheresid=0orderbyiddesc")
5ifnotrs.eofthen
6dowhilenotrs.eof
7response.writers(2)&"<br>"
8callsubfl(rs(0),"  |-")轮回子级分类
9rs.movenext
10ifrs.eofthenexitdo防上形成逝世轮回
11loop
12endif
13endsub
14界说子级分类
15subsubfl(fid,strdis)
16dimrs1
17setrs1=conn.execute("selectid,sid,ClassNamefromClassNamewheresid="&fid&"orderbyiddesc")
18ifnotrs1.eofthen
19dowhilenotrs1.eof
20response.writers1(2)&"<br>"
21callsubfl(rs1(0),"  "&strdis)递回子级分类
22rs1.movenext
23ifrs1.eofthen
24rs1.close
25exitsub
26endif
27loop
28endif
29endsub
我参考下面的代码改成了asp.net版本的无穷分类.入手下手碰到了语法上的限定.事先的处置是间接把rs换成SqlDataReader,然后加以修正,代码以下(毛病代码):
测试数据库的表Tree布局是:id,ParentID,Name。
1privatevoidDisplay(stringparentid/**//*,intrank*/)
2{
3SqlDataReaderdr;
4SqlCommandcmd;
5StringstrSQL;
6
7strSQL="Select*FromTreeWhereParentID="+parentid+"OrderByIDDESC";
8cmd=newSqlCommand(strSQL,conn);
9//cmd.Connection.Open();
10
11using(dr=cmd.ExecuteReader())
12{
13while(dr.Read())
14{
15Response.Write(dr["Name"].ToString()+"<br>");
16Display(dr["ID"].ToString());
17}
18}
19cmd.Connection.Close();
20}挪用利用Display("0").
毛病缘故原由是SqlDataReader每次利用以后都必要封闭,以是DataReader是不成以嵌套利用的.
厥后我改成了用DataTable的情势完成了无穷分类,可是感到这类体例的效力不高,必要改善(还在研讨中)
修正后的代码以下:
1privatevoidDisplay(stringparentid,Stringspace)
2{
3DataTabledt;
4StringstrSQL;
5strSQL="Select*FromTreeWhereParentID="+parentid+"OrderByIDDESC";
6
7SqlDataAdaptersda=newSqlDataAdapter(strSQL,conn);
8DataSetds=newDataSet();
9sda.Fill(ds,"Tree");
10dt=ds.Tables["Tree"];
11
12if(dt.Rows.Count>0)
13{
14foreach(DataRowdrindt.Rows)
15{
16strOpinion+=space+"<fontcolor=red>["+dr["Name"].ToString()+"<br>";
17Display(dr["ID"].ToString(),""+space,false);
18}
19}
20}挪用时分利用Display("0","↓→→")。
固然是完成了无穷分类,可是效力仍是挺低,勉力探究更高的效力。
出处:P.DragonsBlog
也不知道,我同学昨天说数据挖掘很好。
灵魂腐蚀 该用户已被删除
沙发
发表于 2015-1-19 18:04:06 | 只看该作者
微软又推出ASP.NET。这不是ASP的简单升级,而是全新一代的动态网页实现系统,用于一台WEB服务器建立强大的应用程序。是微软发展的新体系结构.NET的一部分,是ASP和.NET技术的结合。
莫相离 该用户已被删除
板凳
发表于 2015-1-25 23:05:30 | 只看该作者
是指转换后的Servlet程序代码的行数。这给调试代码带来一定困难。所以,在排除错误时,可以采取分段排除的方法(在可能出错的代码前后输出一些字符串,用字符串是否被输出来确定代码段从哪里开始出错)。
飘飘悠悠 该用户已被删除
地板
发表于 2015-2-4 13:08:16 | 只看该作者
如今主流的Web服务器软件主要由IIS或Apache组成。IIS支持ASP且只能运行在Windows平台下,Apache支持PHP,CGI,JSP且可运行于多种平台,虽然Apache是世界使用排名第一的Web服务器平台。
小女巫 该用户已被删除
5#
发表于 2015-2-28 03:55:22 | 只看该作者
虽然在形式上JSP和ASP或PHP看上去很相似——都可以被内嵌在HTML代码中。但是,它的执行方式和ASP或PHP完全不同。在JSP被执行的时候,JSP文件被JSP解释器(JSPParser)转换成Servlet代码,然后Servlet代码被Java编译器编译成.class字节文件,这样就由生成的Servlet来对客户端应答。所以,JSP可以看做是Servlet的脚本语言(ScriptLanguage)版。
6#
发表于 2015-3-9 20:45:11 | 只看该作者
但是目前在CGI中使用的最为广泛的是Perl语言。所以,狭义上所指的CGI程序一般都是指Perl程序,一般CGI程序的后缀都是.pl或者.cgi。
不帅 该用户已被删除
7#
发表于 2015-3-17 01:09:06 | 只看该作者
虽然在形式上JSP和ASP或PHP看上去很相似——都可以被内嵌在HTML代码中。但是,它的执行方式和ASP或PHP完全不同。在JSP被执行的时候,JSP文件被JSP解释器(JSPParser)转换成Servlet代码,然后Servlet代码被Java编译器编译成.class字节文件,这样就由生成的Servlet来对客户端应答。所以,JSP可以看做是Servlet的脚本语言(ScriptLanguage)版。
山那边是海 该用户已被删除
8#
发表于 2015-3-17 01:09:07 | 只看该作者
JSP/Servlet虽然在国内目前的应用并不广泛,但是其前途不可限量。
简单生活 该用户已被删除
9#
发表于 2015-3-23 12:10:17 | 只看该作者
PHP的源代码完全公开,在OpenSource意识抬头的今天,它更是这方面的中流砥柱。不断地有新的函数库加入,以及不停地更新,使得PHP无论在UNIX或是Win32的平台上都可以有更多新的功能。它提供丰富的函数,使得在程式设计方面有着更好的资源。目前PHP的最新版本为4.1.1,它可以在Win32以及UNIX/Linux等几乎所有的平台上良好工作。PHP在4.0版后使用了全新的Zend引擎,其在最佳化之后的效率,比较传统CGI或者ASP等技术有了更好的表现。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-5-28 03:35

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表