最新评论

共3页: 1 2 3 下一页 
好东西 学习了
麻烦问下,图片放在本地吗?我打印出来该程序图片路径是在模拟器里面的progranm files文件夹下。不知道把图片放到哪里去
@gougou119 你可定没自己建IButton class cs文件吧
好,搜了很久关于如何做图片按钮和修改窗口背景的相关资料,无果!!意外搜索到你在博客里发的这篇文章,就是我想要的效果和样式,我是C#的新手,按照你说的写的编译出错了,提示错误 找不到类型或命名空间名称“Command”(是否缺少 using 指令或程序集引用?) E:\C#\练习\DeviceApplication1\DeviceApplication1\IButton.cs 18 17 DeviceApplication1 不知道如何解决,急盼你的回复~~~ 方便可以给我你的工程吗?万分的感谢了 E-M:20461368@qq.com
分页算法其实都一样 看具体怎么实现了
用牛顿 PS:我发现越来越不需要自己写代码了,你想到的人家都写了,如果你发现别人从来没写过,那么就是你没找到,或者人家没发布。 想在编程的领域里搞发明太难了。
发明了个轮子。
Windows系统(包括WinCE,Windows Mobile,Windows Phone)应用界面开发: 1.VC/EVC/MFC/C#界面; 2.源码全开放,可自由修改和发放,提供支持多平台编译的源码; 3.界面代码丰富,如:GPS导航界面、常用工控类界面; 4.分类明确,可以快速找到您需要的代码功能与模块; 5.嵌入式代码支持WINCE,Windows Mobile等平台,可用于手机,移动终端等设备。 6.部分代码采用WIN32 SDK编写,速度快,效率高,界面漂亮。 7.GIF图片显示; 8.PNG图片透明显示; 9.PNG按钮,界面等; 10.WINCE游戏小软件等; *可提供需求,定制漂亮的UI程序界面,代码可靠,周期短。 详细请访问: http://www.evccode.com
Re:将List对象列表转换成JSON格式的类 闲聊闲逛 2009-12-17 15:29  
谢谢共享,还有关于前台传入JSON,后台解析的吗?
楼主可以参考下aspnetPager
值得探讨
如果测试从100列*10000行的数据中取所有行的其中两个字段,Linq的牛B之处就体现出来了
为啥有这么多人喜欢讨论分页? sql2005自带的rownum,微软不是已经给出官方的解决方案了吗?每个人都要自己再弄一套,又是何必?性能相差又不是很大,以我的经验:只要关键字段做了索引,不管是存储过程也好,RowNum也好,还是Max算法也好,实际上执行效率都不会相差很大(100w数据以内)
写的不错,我也是搞.net开发的,以后多交流啊!http://www.bksite.com/
--引用--------------------------------------------------
kiler: DataPager貌似要和数据源结合在一起才能用,基本属于鸡肋,现在项目基本还是用aspnetpager。
--------------------------------------------------------

赞同。
注重了显示,没注重效率。
又看了一遍,确实很OO,但是不得不说,被OO的思想害了。

“主要从算法上简捷地实现分页”。确实挺简洁,但是算法从何说起呢?
只是一个循环,从一个大的list里面取一个小的list。这个算不上什么算法吧。


因为是“分页”,多数情况都是要从数据库里面提取数据,所以效率是很重要的。对于数据库分页,效率是压倒一切的。除非你只是想玩一玩。

我的想法是,html代码最好不要写在.cs文件里面
@Cat Chen
List<>跟SqlDataSource怎么比较,我的意思是list<>跟GridView?SqlDataSource不就是个数据访问层,单表还可以,多表级联怎么办,而且明显用这个东西,不是成了两层应用程序,业务逻辑复杂其不是很混乱?GridView等分页有人用吗,这不就是你说的读取所有数据再分页?gridview本身就是个复杂的list<>.
net2.0提出的这几个东西,我看也就是datatable在性能和方便性上值得利用。
要想简单的话,直接用系统的,或者第三方控件,就可以了。

自己要想写嘛,那就得有点特点才行。
--引用--------------------------------------------------
金色海洋(jyk): 如果是封装成控件的话,那么内部有多少代码并不是重要的,

重要的是:稳定性、安全性、易用性等。
--------------------------------------------------------
主要目的是想用很少的代码量,简洁地表达一种分页的算法。写80行之类的,确实有广告的嫌疑。

代码写的短才有朋友能耐心地看完,理解你要表达的意图。我是这么考虑的。

如果要把这些代码封装能更通用的控件,那要继续努力了。
--引用--------------------------------------------------
Tristan Guo: 这只是个分页控件,简单的数学计算而已
--------------------------------------------------------
bingo
@Lao Cai
我确定正确使用SqlDataSource效率能够比List<>内存分页性能好,因为SqlDataSource直接调用存储过程分页了,读取的就是分页后的数据,肯定比读取所有数据再分页要快。但这是指正确使用的情况下。
这只是个分页控件,简单的数学计算而已
如果是封装成控件的话,那么内部有多少代码并不是重要的,

重要的是:稳定性、安全性、易用性等。
@LZ,其实这种分页可以封闭成一个控件,我根据aspnetpager改造了一下:

http://www.cnblogs.com/ASPNET2008/archive/2008/03/29/1128782.html
1:支持url参数分页;
2:运行回发事件分页;
3:可以自定义样式( 样式的名称是写死的,用户只能更改样式内容);
第三条也是LZ说的,带图片和不带图片功能,可以通过自定义样式来解决.



--引用--------------------------------------------------
随风流月: 数据量略大就会有很多问题了.
建议用泛型 + Linq to SQL/Entities, 你会发现视野一下被拓宽了 :)
--------------------------------------------------------
--引用--------------------------------------------------
enderchen: 本人觉得有两个问题,一个是用泛型取数据,一次把所有数据取出来是不可取的,并没有从数据库方面做数据提取的优化,第二个,当页数很多的时候,页数很多,也没有提供任意跳转的方式,而且页数是通过url来传输的,显得很混乱
--------------------------------------------------------
--引用--------------------------------------------------
源姜: --引用--------------------------------------------------
imbin: 只适合小型网站应用
--------------------------------------------------------
不理解总有朋友担心数据量太大引起的性能问题。特别说某个算法适用于什么类型的应用,我只能说这些只是想象的推论,不能算结论。
以这个分页算法来看。随便那个大型的网站去看看,想找个分长些页码的页都困难。比如说163,大家不妨找一下。所以实际要用于显示的数据量必须得限定范围。

如同论坛分块一样,如果数据量太大,那就要考虑分类显示来解决性能问题,而不是从分页上找性能问题了。不知是不是有道理,大家继续讨论。
--------------------------------------------------------

Hibernate,NHibernate,Linq To SQl是让大家从技术细节中解脱出来,更加关注项目的逻辑。个人偏向于SQL+ADO.net

个人认为,分页用存储过程好。

支持分页用于相对少的数据,数据太多就应该分类了(几乎没有人翻上十多页)。

=》没有通用的最好,只有相对的适用。
@Cat Chen
你确定在内存对List<>分页的效率要比用SqlDataSource等其他要低?SqlDataSource也支持oracle?
分页关键还是要考滤数据读取操作的问题
数据量略大就会有很多问题了.
建议用泛型 + Linq to SQL/Entities, 你会发现视野一下被拓宽了 :)

--引用--------------------------------------------------
源姜: --引用--------------------------------------------------
xuzhibin: 我觉得分页类只管分页就行了,不应该把对象列表放进去(我用过的pager。php)都是不会考虑数据列表的,除非是框架自带的pager(如fleaphp,它是传数据入口,然后在数据库查数据,并不是把所有数据查出来在截数组),我写的.NET分页类就是几个属性(前页,后页,当前页,总页数,每页显示数,页码数,页码范围),构造函数输入其中的(当前页,总数据数,每页显示数,页码数),我是因为页面用不了控件才写的
--------------------------------------------------------
PHP的类实现是用的数组,考查.net架构下。只能用IList&lt;object&gt;来替换以保证通用性。
其它语言实现时可以类似的替换。倒不一定非得用对象列表。

--------------------------------------------------------
我的意思是分页类里面如果不去数据库取数据,就不必要把对象列表传进去了,只需要传一个int型的总数即可,同时对于url需要传递的变量,我是用一个字典变量来储存的
考虑到效率问题,取得分页数后,再到数据库取得数据效果更好。个人看法!
一直想找一个很好的分页算法,可是每次找到的总是一次就得到所有数据的,很想问一下楼主,分页的思想是什么?如果我们一次就取得了全部数据,为什么不一次全部显示呢?如果是单纯的为了分页,完全可以使用GridView控件,只需要配置一下数据集,写一些页面切换的事件代码,这就可以搞定了!代码不会超过40行的。如果写成存储过程,相信会更好一些!
这和asp.net自带grid控件的分页功能差不多,不是很高效。
逻辑应该没有问题。小的业务系统也够用了,用户几个人,没什么业务平时也用不了几下子。

不过有一些疑问,请试想:

假如IList有100条记录,按每页20条,也就是5页吧。此时如有100客户端并发是的话,服务器内存、CPU曲线是什么效果?这个数字*10呢?
我博客数量小,更新少.存个数量索引,分页只管根据数据条数算出导航来.其他不管.分页管数据,太慢了感觉
本人觉得有两个问题,一个是用泛型取数据,一次把所有数据取出来是不可取的,并没有从数据库方面做数据提取的优化,第二个,当页数很多的时候,页数很多,也没有提供任意跳转的方式,而且页数是通过url来传输的,显得很混乱
--引用--------------------------------------------------
imbin: 只适合小型网站应用
--------------------------------------------------------
不理解总有朋友担心数据量太大引起的性能问题。特别说某个算法适用于什么类型的应用,我只能说这些只是想象的推论,不能算结论。
以这个分页算法来看。随便那个大型的网站去看看,想找个分长些页码的页都困难。比如说163,大家不妨找一下。所以实际要用于显示的数据量必须得限定范围。

如同论坛分块一样,如果数据量太大,那就要考虑分类显示来解决性能问题,而不是从分页上找性能问题了。不知是不是有道理,大家继续讨论。
--引用--------------------------------------------------
Astar: 我也一直在用像你这样的分页算法,只是个函数,不过我那支持文字和图片两种格式,还有一个下拉表选择分页,里面的链接等样式都可自定义,当然包括图片样式,也有那个数字效果,显示数目也能自义.
----------------------------------------------------
希望能分享一下。
--引用--------------------------------------------------
xuzhibin: 我觉得分页类只管分页就行了,不应该把对象列表放进去(我用过的pager。php)都是不会考虑数据列表的,除非是框架自带的pager(如fleaphp,它是传数据入口,然后在数据库查数据,并不是把所有数据查出来在截数组),我写的.NET分页类就是几个属性(前页,后页,当前页,总页数,每页显示数,页码数,页码范围),构造函数输入其中的(当前页,总数据数,每页显示数,页码数),我是因为页面用不了控件才写的
--------------------------------------------------------
PHP的类实现是用的数组,考查.net架构下。只能用IList<object>来替换以保证通用性。
其它语言实现时可以类似的替换。倒不一定非得用对象列表。
--引用--------------------------------------------------
成峰: 呵呵,想法确实不错!赞一个先……

这个方法确实是不错的。
但是有以下疑问:
大致看楼主的思路是将页面通过 url传给下一个页面链接,然后在那个页面中通过 Request.Querystring[] 的方法获取应该显示的页码然后对数据进行筛选显示。

如果:如果在这一个列表上再加一个搜索,如:用户列表,要求按用户名搜索。

这个时候就比较麻烦了,因为当前页在第四页,搜索一下之后,数据可能只有两页。可能会异常。这就造成在搜索的时候不得不照顾一下分页的事情。即:搜索后产生条件,还得再往第一页跳转一次,整个过程看起来比较怪异。


--------------------------------------------------------
这个问题在应用中也经常会发生,我的处理方法是把搜索和分页也分开。搜索的条件放进cookies或Session中,再页面调用时再把数据根据内存的这些变量进行检索。那么换页时由于内存里的东西没变是不需要加backurl的。
另外,还有不少人在怀疑性能的事情。
性能与分页的算法关系不大。无论那种分页,都需要类似的计算。就算在数据量超大时,我们也不会需要到显示所有数据。也许在1000万条数据中取出1000条来显示,所以性能的瓶颈,就象前面几位兄弟说的是在你取来数据的地方,而不是在于分页的算法本身。
如果真是有需要很大量的数据用于分页显示,那我感觉,是不是要考虑一下这样的显示对于用户来讲是不是有实际的意义。
如同你有1万页数据显示给用户,那要不要分页也没必要了。
:)、

另外如果真想提高性能,其实很简单的方法就是应用缓存。不过这就不是用简单的例子可以说清楚的事儿了,在一般应用中,你可以试一下,不用缓存,性能也没你想象的那么差。至少没有体感。呵呵。
呵呵,想法确实不错!赞一个先……

这个方法确实是不错的。
但是有以下疑问:
大致看楼主的思路是将页面通过 url传给下一个页面链接,然后在那个页面中通过 Request.Querystring[] 的方法获取应该显示的页码然后对数据进行筛选显示。

如果:如果在这一个列表上再加一个搜索,如:用户列表,要求按用户名搜索。

这个时候就比较麻烦了,因为当前页在第四页,搜索一下之后,数据可能只有两页。可能会异常。这就造成在搜索的时候不得不照顾一下分页的事情。即:搜索后产生条件,还得再往第一页跳转一次,整个过程看起来比较怪异。

你这样写,还不如直接用ASP.NET中自带的分页类,
每次都把数据全部取过来一次。效率太低了。
共3页: 1 2 3 下一页 

导航

公告

昵称:源姜
园龄:3年3个月
粉丝:4
关注:0
<2012年2月>
2930311234
567891011
12131415161718
19202122232425
26272829123
45678910

统计

搜索

 

常用链接

我的标签

随笔档案

文章分类

相册

最新评论

阅读排行榜

评论排行榜

推荐排行榜