ITPUB??ì3
ITPUB论坛 » Web开发 » ASP.NET与AJAX » 使用中关于gridview的三个问题

标题: 使用中关于gridview的三个问题
离线 dotnetworker
一般会员



精华贴数 0
个人空间 0
技术积分 8754 (168)
社区积分 0 (1464077)
注册日期 2007-6-21
论坛徽章:33
开发板块每日发贴之星开发板块每日发贴之星开发板块每日发贴之星生肖徽章2007版:鼠生肖徽章2007版:鼠生肖徽章2007版:鼠
生肖徽章2007版:鼠生肖徽章2007版:鼠生肖徽章2007版:鼠生肖徽章2007版:鼠生肖徽章2007版:鼠生肖徽章2007版:鼠

发表于 2007-6-27 12:55 
使用中关于gridview的三个问题

我现在使用asp.net 开始做一些程序,属于初级水平,以前一直做cs结构的

我现在做一个程序,很简单,上面有几个textbox和radiobutton之类的,由用户自己设置查询的内容,然后点击后面的button,将查询结构显示在gridview中,为了灵活,我不是用的绑定的方式,都是自己写的代码。

问题1:将gridview拖放到页面上后,好像用鼠标并不能随意的放到任何位置上,放上就不动了,其他的控件也是一样的,我想问问大家,你们在.net里是如何设计界面的? 曾听说有让用 Dreamweaver 设计界面的,可是我用这个打开后,gridview显示的是“asp”的一个小图标 这样怎么设计啊,我晕了,呵呵

问题2:我的代码如下:

定义 connection  定义 dataset ...
Dim TrainAdapter As SqlDataAdapter = New SqlDataAdapter(StrTrainSearch, TrainConn)

TrainAdapter.Fill(TrainDataSet, "Train"

GridView1.DataSource = TrainDataSet.Tables("Train"
GridView1.DataBind()

最后释放若干对象...
--------------------------

印象中好像有个帖子说用dataset速度不快,用reader什么的速度快
我这个地方只有一个查询,其他什么功能都没有,
我就是要以最快的速度查询并显示出来,我这里能用那个reader吗?
如果能的话,我应该怎么改呢?谢谢

问题三:还是关于速度的问题
我的查询页面是在一个框架结构中的,框架分为上下结构,
上面是菜单之类的,下面是这个查询页,
在查询页的load事件里,我调用了查询的过程,默认显示出一些数据来,
但是我发现,第一次显示时速度很慢,当点击开这个页面时,
框架上方的页面很快就显示出来了,但是下面的查询页面需要很长时间才能查询出来,在这之前下面是一片空白,会让人误以为是没内容呢
我设想能有个什么方法来解决这个问题,比如,一开始显示出一个空的表格或者其他什么,告诉用户“正在查询请稍后”,然后当查询完成时,再显示出结果来,
我也不知道这个技术应该用到什么,所以也不知道该搜些什么信息,
只好过来发个贴了


另:这个程序,代码很简单,查询的数据量也很小,一般几十行,最多也就几百行,用的是sql2000的数据库,但是页面的使用频率会很高,所以我希望以最快的速度将结果展现出来,在这方面有什么应注意的地方,请大家指点一下。


只看该作者    顶部
离线 smartpig
老会员



精华贴数 1
个人空间 160
技术积分 10527 (134)
社区积分 0 (1075741)
注册日期 2006-8-9
论坛徽章:34
会员2007贡献徽章2009新春纪念徽章开发板块每日发贴之星开发板块每日发贴之星开发板块每日发贴之星生肖徽章2007版:鼠
生肖徽章2007版:鼠生肖徽章2007版:鼠生肖徽章2007版:鼠生肖徽章2007版:鼠生肖徽章2007版:鼠生肖徽章2007版:鼠

发表于 2007-6-27 12:57 
问题1:这个不懂,从不做界面

问题2:...

这样改...
Dim TrainCommand As SqlCommand = New SqlCommand(StrTrainSearch, TrainConn)

TrainConn.Open

GridView1.DataSource = TrainCommand.ExecuteReader()
GridView1.DataBind()

TrainConn.Close()

问题三:还是关于速度的问题
使用存储过程替代SQL语句
如果用户访问的数据差不多相同,考虑使用缓存


只看该作者    顶部
离线 ziyi0808
印钞机


精华贴数 1
个人空间 56
技术积分 2333 (772)
社区积分 1777 (754)
注册日期 2007-4-24
论坛徽章:26
会员2007贡献徽章CTO参与奖2008北京奥运纪念徽章:皮划艇激流回旋2008北京奥运纪念徽章:摔跤2008北京奥运纪念徽章:游泳2008北京奥运纪念徽章:现代五项
2008北京奥运纪念徽章:篮球生肖徽章2007版:鼠生肖徽章2007版:鼠生肖徽章2007版:鼠生肖徽章2007版:鼠生肖徽章2007版:鼠

发表于 2007-6-27 13:43 
第一题
打开一个页面,选择 布局--位置--自动定位选项--相对位置  
第二题
当设计应用程序时,要考虑应用程序所需功能的等级,以确定使用DataSet或者是DataReader。
  要通过应用程序执行以下操作,就要使用DataSet:
  1) 在结果的多个离散表之间进行导航。
  2) 操作来自多个数据源(例如,来自多个数据库、一个XML文件和一个电子表格的混合数据)的数据。
  3) 在各层之间交换数据或使用XML Web服务。与DataReader不同的是,DataSet能传递给远程客户端。
  4) 重用同样的记录集合,以便通过缓存获得性能改善(例如排序、搜索或筛选数据)。
  5) 每条记录都需要执行大量处理。对使用DataReader返回的每一行进行扩展处理会延长服务于DataReader的连接的必要时间,这影响了性能。
  6) 使用XML操作对数据进行操作,例如可扩展样式表语言转换(XSLT转换)或XPath查询。
  对于下列情况,要在应用程序中使用DataReader:
  1) 不需要缓存数据。
  2) 要处理的结果集太大,内存中放不下。
  3) 一旦需要以仅向前、只读方式快速访问数据。
  注填充DataSet时,DataAdapter使用DataReader。因此,使用DataReader取代DataSet提升的性能表现为节省了DataSet占用内存和填充DataSet需要的循环。一般来说,此性能提升只是象征性的,因此,设计决策应以所需功能为基础。
第三题
可以做一个进度条滚动的图片,google or baidu 一下,很多这方面的资料


__________________
只看该作者    顶部
离线 ziyi0808
印钞机


精华贴数 1
个人空间 56
技术积分 2333 (772)
社区积分 1777 (754)
注册日期 2007-4-24
论坛徽章:26
会员2007贡献徽章CTO参与奖2008北京奥运纪念徽章:皮划艇激流回旋2008北京奥运纪念徽章:摔跤2008北京奥运纪念徽章:游泳2008北京奥运纪念徽章:现代五项
2008北京奥运纪念徽章:篮球生肖徽章2007版:鼠生肖徽章2007版:鼠生肖徽章2007版:鼠生肖徽章2007版:鼠生肖徽章2007版:鼠

发表于 2007-6-27 14:23 
至于二楼所说
GridView1.DataSource = TrainCommand.ExecuteReader()
GridView1.DataBind()
这个问题
TrainCommand.ExecuteReader()返回的是SqlDataReader对象 而SqlDataReader只是提供了一个数据的只读的指向,是不能拿来直接给GridView进行赋值并绑定的。


__________________
只看该作者    顶部
 
    

相关内容


CopyRight 1999-2006 itpub.net All Right Reserved.
北京皓辰网域网络信息技术有限公司. 版权所有
E-mail:Webmaster@itpub.net
京ICP证:060528号 联系我们 法律顾问