从前面往后面写:
ascx:
1
<asp:datagrid id="grdTopics" Runat="server" GridLines="None" CellPadding="2" AutoGenerateColumns="false"
2
width="100%" cssclass="DataGrid_Container">
3
<FooterStyle CssClass="DataGrid_Footer"></FooterStyle>
4
<SelectedItemStyle CssClass="NormalRed"></SelectedItemStyle>
5
<EditItemStyle CssClass="NormalTextBox"></EditItemStyle>
6
<AlternatingItemStyle CssClass="Normal"></AlternatingItemStyle>
7
<ItemStyle HorizontalAlign="Left" CssClass="Normal"></ItemStyle>
8
<HeaderStyle HorizontalAlign="Center" CssClass="NormalBold" VerticalAlign="Top"></HeaderStyle>
9
<Columns>
10
<asp:TemplateColumn HeaderText="Selected">
11
<ItemTemplate>
12
<input type="checkbox" width="10" name="chkid" value='<%# DataBinder.Eval(Container.DataItem, "TopicID")%>' onclick='UnCheck(this)' style="background-color:transparent" >
13
</ItemTemplate>
14
</asp:TemplateColumn>
15
<dnn:TextColumn HeaderText="TopicId" DataField="TopicId" Width="50">
16
<HeaderStyle Font-Size="10pt" Font-Names="Tahoma, Verdana, Arial" Font-Bold="True" HorizontalAlign="Left"></HeaderStyle>
17
<ItemStyle Font-Size="10pt" Font-Names="Tahoma, Verdana, Arial" HorizontalAlign="Left"></ItemStyle>
18
<HeaderTemplate></HeaderTemplate>
19
<ItemTemplate></ItemTemplate>
20
<EditItemTemplate></EditItemTemplate>
21
</dnn:TextColumn>
22
<dnn:TextColumn HeaderText="Title" DataField="inTitle" Width="">
23
<HeaderStyle Font-Size="10pt" Font-Names="Tahoma, Verdana, Arial" Font-Bold="True" HorizontalAlign="Left"></HeaderStyle>
24
<ItemStyle Font-Size="10pt" Font-Names="Tahoma, Verdana, Arial" HorizontalAlign="Left"></ItemStyle>
25
<HeaderTemplate></HeaderTemplate>
26
<ItemTemplate></ItemTemplate>
27
<EditItemTemplate></EditItemTemplate>
28
</dnn:TextColumn>
29
<dnn:TextColumn HeaderText="Summary" DataField="inSummary" Width="50">
30
<HeaderStyle Font-Size="10pt" Font-Names="Tahoma, Verdana, Arial" Font-Bold="True" HorizontalAlign="Left"></HeaderStyle>
31
<ItemStyle Font-Size="10pt" Font-Names="Tahoma, Verdana, Arial" HorizontalAlign="Left"></ItemStyle>
32
<HeaderTemplate></HeaderTemplate>
33
<ItemTemplate></ItemTemplate>
34
<EditItemTemplate></EditItemTemplate>
35
</dnn:TextColumn>
36
<dnn:TextColumn HeaderText="Guests" DataField="inGuests" Width="">
37
<HeaderStyle Font-Size="10pt" Font-Names="Tahoma, Verdana, Arial" Font-Bold="True" HorizontalAlign="Left"></HeaderStyle>
38
<ItemStyle Font-Size="10pt" Font-Names="Tahoma, Verdana, Arial" HorizontalAlign="Left"></ItemStyle>
39
<HeaderTemplate></HeaderTemplate>
40
<ItemTemplate></ItemTemplate>
41
<EditItemTemplate></EditItemTemplate>
42
</dnn:TextColumn>
43
<dnn:TextColumn HeaderText="Time" DataField="inTime" Width="">
44
<HeaderStyle Font-Size="10pt" Font-Names="Tahoma, Verdana, Arial" Font-Bold="True" HorizontalAlign="Left"></HeaderStyle>
45
<ItemStyle Font-Size="10pt" Font-Names="Tahoma, Verdana, Arial" HorizontalAlign="Left"></ItemStyle>
46
<HeaderTemplate></HeaderTemplate>
47
<ItemTemplate></ItemTemplate>
48
<EditItemTemplate></EditItemTemplate>
49
</dnn:TextColumn>
50
<dnn:TextColumn HeaderText="ImgUrl" DataField="inImgUrl" Width="">
51
<HeaderStyle Font-Size="10pt" Font-Names="Tahoma, Verdana, Arial" Font-Bold="True" HorizontalAlign="Left"></HeaderStyle>
52
<ItemStyle Font-Size="10pt" Font-Names="Tahoma, Verdana, Arial" HorizontalAlign="Left"></ItemStyle>
53
<HeaderTemplate></HeaderTemplate>
54
<ItemTemplate></ItemTemplate>
55
<EditItemTemplate></EditItemTemplate>
56
</dnn:TextColumn>
57
<dnn:ImageCommandColumn KeyField="TopicId" ShowImage="True" ImageURL="images/edit.gif" CommandName="Edit"
58
EditMode="URL">
59
<HeaderStyle Font-Size="10pt" Font-Names="Tahoma, Verdana, Arial" Font-Bold="True" HorizontalAlign="Center"></HeaderStyle>
60
<EditItemTemplate></EditItemTemplate>
61
<ItemStyle HorizontalAlign="Center"></ItemStyle>
62
<HeaderTemplate></HeaderTemplate>
63
<ItemTemplate></ItemTemplate>
64
</dnn:ImageCommandColumn>
65
<dnn:ImageCommandColumn KeyField="TopicId" ShowImage="True" ImageURL="images/delete.gif" CommandName="Delete"
66
EditMode="Command">
67
<HeaderStyle Font-Size="10pt" Font-Names="Tahoma, Verdana, Arial" Font-Bold="True" HorizontalAlign="Center"></HeaderStyle>
68
<EditItemTemplate></EditItemTemplate>
69
<ItemStyle HorizontalAlign="Center"></ItemStyle>
70
<HeaderTemplate></HeaderTemplate>
71
<ItemTemplate></ItemTemplate>
72
</dnn:ImageCommandColumn>
73
</Columns>
74
<PagerStyle CssClass="DataGrid_Pager"></PagerStyle>
75
</asp:datagrid>
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
下面就有问题了:
.ascx.cs:
1
private void BindData()
2
}
最大的错误出现在controller里面:2
1
public TopicsInfo GetTopics(int ModuleID)
2
}
由于对 IDataReader reader1 = DataProvider.Instance().GetTopics(ModuleID); reader1.Read();2
不熟悉,所以犯错误了,现在详细的认识一下这个idatareader :
通过存储过程gettopic读出来所有的数据库中的数据,reader[0]是第一个数组中的内容。
reader1.NextResult();读下一个数组。
num1得到了reader[0],即topic的个数(在存储过程里面很清楚,一共select了两个数据,一个是topic个数,一个是topic的内容)
然后 info1.count = num1。
info1.topics = list1(即reader读的第二条数据 reader1.NextResult(),topic的内容)
以下是存储过程:
1
SELECT COUNT([TopicId])
2
FROM dbo.HVC_ChatRoom_TopicsList
3
WHERE ModuleID = @ModuleID
4
5
SELECT
6
TopicId,
7
inTitle,
8
inSummary,
9
inTime,
10
inGuests
11
FROM {databaseOwner}{objectQualifier}HVC_ChatRoom_TopicsList
12
WHERE ModuleID = @ModuleID
2
3
4
5
6
7
8
9
10
11
12