|
主题: 蓝鲸老大,我有问题!!
|
Lukiya
职务:普通成员
等级:1
金币:0.0
发贴:59
|
#12004/11/17 19:32:51
自学到数据绑定了。
今天在写个歌手分类,情况如下。 页面里有26个Panel,每个Panel里装名字里同一个字母开头的歌手。
想从数据库中读取出每个字母对应的歌手,并让他们全部横向显示,而且每个歌手名字带链接,可以用控件实现么,该用哪个控件 DataGrid?Repetor?DataList?好像都没有横向显示,莫非只有用ASP老办法…………
|
缺缺
职务:管理员
等级:8
金币:41.0
发贴:9620
|
#22004/11/17 19:37:38
DataList
|
Lukiya
职务:普通成员
等级:1
金币:0.0
发贴:59
|
#32004/11/17 20:19:29
哦?可以么,去尝试下。谢谢楼上!
|
蓝鲸
职务:版主
等级:5
金币:42.1
发贴:2614
|
#42004/11/17 20:31:14
记录里应该有字母这个字段吧,中文的在存储时就要考虑用一个字段存储开头字母,这样在查询时效率就高。 这样可以用查询,并按字母排序。 DataGrid我印象中比较适合于数据显示,如果要用一些复杂的排版,灵活性不够。DataList适中。Repetor灵活性最好,但功能相对没有上两控件强。 每种控件都有用处,要看怎么设计了。程序员也有自己爱,我个人比较喜欢Repeator,但如果一般显示DataGrid开发速度较快。
非常大鱼
|
Lukiya
职务:普通成员
等级:1
金币:0.0
发贴:59
|
#52004/11/17 20:32:18
晕,问题如下,帮我看下。 OleDbConnection myConn; DataSet ds = new DataSet(); string sSortID = Request.QueryString["SortID"]; // 读取连接字符串 string sConnectionString = ConfigurationSettings.AppSettings["OleConnStr"]; string sSel = "Select * From Singer Where A_Z = Z And SortID = "+sSortID; myConn = new OleDbConnection(sConnectionString); // 建立连接对象 OleDbDataAdapter MyAdapter = new OleDbDataAdapter(sSel,myConn); MyAdapter.Fill(ds,"Singer");
DataList_A.DataSource = ds.Tables["Singer"].DefaultView; DataList_A.DataBind();
-----------------------------------------------------我是分割线-------------------------------------------------- 说MyAdapter.Fill(ds,"Singer"); 这里“至少一个参数没有被指定值。”,怎么回事?!我照书上格式写的呀??
|
Lukiya
职务:普通成员
等级:1
金币:0.0
发贴:59
|
#62004/11/17 20:34:34
蓝鲸在上个帖子中说 引用: 记录里应该有字母这个字段吧,中文的在存储时就要考虑用一个字段存储开头字母,这样在查询时效率就高。 .....
有有有,楼上那段SQL语言里的A_Z字段就是存储歌手首字母的。
|
蓝鲸
职务:版主
等级:5
金币:42.1
发贴:2614
|
#72004/11/17 20:35:04
myConn.Open()
非常大鱼
|
Lukiya
职务:普通成员
等级:1
金币:0.0
发贴:59
|
#82004/11/17 20:38:07
加了myConn.Open()后的程序
OleDbConnection myConn; DataSet ds = new DataSet(); string sSortID = Request.QueryString["SortID"]; // 读取连接字符串 string sConnectionString = ConfigurationSettings.AppSettings["OleConnStr"]; string sSel = "Select * From Singer Where A_Z = Z And SortID = "+sSortID; myConn = new OleDbConnection(sConnectionString); // 建立连接对象 OleDbDataAdapter MyAdapter = new OleDbDataAdapter(sSel,myConn); myConn.Open(); MyAdapter.Fill(ds,"Singer");
DataList_A.DataSource = ds.Tables["Singer"].DefaultView; DataList_A.DataBind();
依然提示……………………我晕
|
蓝鲸
职务:版主
等级:5
金币:42.1
发贴:2614
|
#92004/11/17 20:42:53
string sSel = "Select * From Singer Where A_Z = 'Z' And SortID = "+sSortID;
非常大鱼
|
Lukiya
职务:普通成员
等级:1
金币:0.0
发贴:59
|
#102004/11/17 20:49:05
1、汗,原来如此,是不是所有的SQL语句"="右面都必须加''号? 还有,为什么sSortID又不加呢?
2、继续汗,页面显示出来了,但是不显示数据,明明数据库里A_Z字段里为Z的歌手一大串
|
缺缺
职务:管理员
等级:8
金币:41.0
发贴:9620
|
#112004/11/17 20:49:15
A_Z = Z?
你不会写了26条sql吧?
|
缺缺
职务:管理员
等级:8
金币:41.0
发贴:9620
|
#122004/11/17 20:50:14
字符串需要引号,整型不需要,这个在你写VB的时候也应该接触到的概念吧
|
Lukiya
职务:普通成员
等级:1
金币:0.0
发贴:59
|
#132004/11/17 20:57:11
以前ASP里写SQL感觉从来没有加过''也能成功……好像是……
对的,我准备写26条SQL,不然怎么办??
怎么才能只写一条又在页面显示上全部A到Z的所有歌手?前提是要能分类,而且带有字母提示,不然用户找起歌手来太麻烦。
|
缺缺
职务:管理员
等级:8
金币:41.0
发贴:9620
|
#142004/11/17 21:00:14
你可以用DataView的RowFilter
|
Lukiya
职务:普通成员
等级:1
金币:0.0
发贴:59
|
#152004/11/17 21:03:42
我都不懂啊,才开始接触ASP,感觉自己象在太空中飘,不知道方向~~~~
DataView是什么?控件么?? 怎么调用?能不能对我上面的例子进行下代码说明?
|