我有两个页面 FileShow.aspx 和 FileType.aspx 各用 datagrid 做了一个表。
FileShow.aspx 表中有所有项目的内容,是全表,其中一项是类别,点击不同类别,就会向 FileType.aspx 传递这个类别参数,在 FileType.aspx?ID={0} 的表中就只显示这个类别的相关内容。但比如我点类别 计算机 后,FileType.aspx?ID=计算机 页面是出现了,URL地址也对,但这一页面表内的内容却是空的,只有表头。
我的部分代码:
=====FileShow.aspx=====
<asp:datagrid id="DataGrid1" style="Z-INDEX: 101; LEFT: 16px; POSITION: absolute; TOP: 104px"
runat="server" Width="675px" AllowPaging="True" AutoGenerateColumns="False" AllowSorting="True"
ForeColor="#000022" DataKeyField="类别">
<HeaderStyle Font-Bold="True" HorizontalAlign="Center"></HeaderStyle>
<Columns>
......
<asp:BoundColumn Visible="False" DataField="类别" SortExpression="类别" ReadOnly="True" HeaderText="类别"></asp:BoundColumn>
<asp:HyperLinkColumn Target="_blank" DataNavigateUrlField="类别" DataNavigateUrlFormatString="FileType.aspx?ID={0}"
DataTextField="类别" SortExpression="类别" HeaderText="类别">
<HeaderStyle Width="51px"></HeaderStyle>
<ItemStyle HorizontalAlign="Center"></ItemStyle>
</asp:HyperLinkColumn>
......
</Columns>
<PagerStyle NextPageText="下一页" PrevPageText="上一页"></PagerStyle>
</asp:datagrid>
=====FileType.aspx=====
<asp:datagrid id="DataGrid1" style="Z-INDEX: 101; LEFT: 16px; POSITION: absolute; TOP: 104px"
runat="server" Width="675px" AllowPaging="True" AutoGenerateColumns="False" AllowSorting="True"
ForeColor="#000022">
<HeaderStyle Font-Bold="True" HorizontalAlign="Center"></HeaderStyle>
<Columns>
......
<asp:BoundColumn DataField="类别" SortExpression="类别" ReadOnly="True" HeaderText="类别"></asp:BoundColumn>
......
</Columns>
<PagerStyle NextPageText="下一页" PrevPageText="上一页"></PagerStyle>
</asp:datagrid>
Sub BindGrid()
Dim Type As String= Request.QueryString("类别")
Dim conn As New OleDb.OleDbConnection
Dim Cmd As New OleDb.OleDbCommand
conn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("\BBS\db\BBS.mdb")
conn.Open()
Cmd.Connection = conn
Cmd.CommandText = "select 序号,文件名,文件格式,类别,简介,上传者,上传时间 from file where 类别='" & Type & "'"
Dim DTA As New System.Data.OleDb.OleDbDataAdapter(Cmd)
Dim DS As New DataSet
DTA.Fill(DS, "file")
DataGrid1.DataSource = DS
DS.Tables("file").DefaultView.Sort = SortField
DataGrid1.DataBind()
conn.Close()
End Sub
Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
If Not IsPostBack Then BindGrid()
End Sub
数据库是access
file表的设计视图
字段名称 数据类型
序号 自动编号
文件名 文本
文件格式 文本
类别 文本
简介 文本
上传者 文本
上传时间 文本
查过帖子,有的说到修改web.config里的
requestEncoding="utf-8"
responseEncoding="utf-8"
/>
为
requestEncoding="GB2312"
responseEncoding="GB2312"
/>
我试了也不行
宏宏网络编程