0

マスター ページを使用して 2 つのページを持つ Web サイトを作成しています。ログイン時に 2 ページ目のグリッドビューにテーブルのすべてのコンテンツを表示したいのですが、何が問題なのか、2 ページ目のグリッドビューが表示されない理由がわかりません。しかし、最初のページでそれを行うと、うまくいきます。

Imports System.Data
Imports System.Xml

Partial Class Default2
    Inherits System.Web.UI.Page
    Dim conn2 As New OleDb.OleDbConnection("Provider=Microsoft.JET.OLEDB.4.0;Data Source=" & Server.MapPath("~/App_Data/Tony.mdb"))
    Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
        If Session("uname") = "" Then
            iduser.Text = "Sorry you are not logged-in to view this page."
        ElseIf Session("uname") = "Wrong username and/or password. Please try again." Or Session("uname") = "Successfully signed-up! Go back to the home page to log-in" Then
            iduser.Text = Session("uname")
        Else
            Dim cload As New OleDb.OleDbDataAdapter("select * from sample where username='" & Session("uname") & "'", conn2)
            Dim tester As New DataSet
            iduser.Text = "Welcome " & Session("uname") & "!"
            tester.Clear()
            cload.Fill(tester)
            Session("valid") = tester.Tables(0).DefaultView.Item(0).Item(9)
            If Session("valid") = "y" Then
                results.DataSource = tester.Tables(0).DefaultView
                results.DataBind()
                lfn.Visible = True
                lln.Visible = True
                lag.Visible = True
            End If
        End If
    End Sub 

次はaspxです。グリッドビューが表示されない理由を明確に説明したいのですが、回避策を追加しました。ご覧のとおり、オブジェクトにデータ ソースを追加した結果、データ ソースのコーディングやデータバインドを行う必要がなくなりました。それでも、私はすべてをハードコーディングすることを好みます。

<asp:Content ID="Content1" ContentPlaceHolderID="head" Runat="Server">
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolder1" Runat="Server">
    <p style="height: 39px">
        <asp:Label ID="iduser" runat="server"></asp:Label>
        <asp:GridView ID="results" runat="server" AutoGenerateColumns="False" 
            Width="249px" EmptyDataText="No Records" DataSourceID="AccessDataSource1">
            <Columns>
                <asp:BoundField DataField="fname" HeaderText="fname" SortExpression="fname" />
                <asp:BoundField DataField="lname" HeaderText="lname" SortExpression="lname" />
                <asp:BoundField DataField="age" HeaderText="age" SortExpression="age" />
                <asp:BoundField DataField="gender" HeaderText="gender" 
                    SortExpression="gender" />
            </Columns>
        </asp:GridView>
        <asp:AccessDataSource ID="AccessDataSource1" runat="server" 
            DataFile="~/App_Data/Tony.mdb" 
            SelectCommand="SELECT [fname], [lname], [age], [gender] FROM [sample] WHERE ([username] = ?)">
            <SelectParameters>
                <asp:SessionParameter Name="username" SessionField="uname" Type="String" />
            </SelectParameters>
        </asp:AccessDataSource>
        <asp:Button ID="bsearch" runat="server" Text="Search:" Visible="False" />
&nbsp;&nbsp;&nbsp;
        <asp:TextBox ID="search" runat="server" Visible="False"></asp:TextBox>
    </p>
    <br />
    <asp:ListBox ID="listsearch" runat="server" Width="216px"></asp:ListBox>
    <br /><h2>
        <asp:Label ID="Label1" runat="server" Text="Edit Profile Here:" Visible="False"></asp:Label>
    </h2>
    <p>
        &nbsp;<asp:Label ID="lfn" runat="server" Text="First Name:&nbsp;&nbsp;" 
            Visible="False"></asp:Label>
        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
    <asp:TextBox ID="fname" runat="server" Enabled="False" Visible="False"></asp:TextBox>
&nbsp;<asp:Label ID="fn" runat="server" ForeColor="#CC3300"></asp:Label>
&nbsp;&nbsp;&nbsp;
</p>
<p>
    <asp:Label ID="lln" runat="server" Text="Last Name:&nbsp;&nbsp;" 
        Visible="False"></asp:Label>
    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
    <asp:TextBox ID="lname" runat="server" Enabled="False" Visible="False"></asp:TextBox>
&nbsp;<asp:Label ID="ln" runat="server" ForeColor="#CC3300"></asp:Label>
&nbsp;&nbsp;&nbsp;
</p>
<p>
    <asp:Label ID="lag" runat="server" Text="Age:" Visible="False"></asp:Label>
    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
    <asp:TextBox ID="age" runat="server" Enabled="False" Visible="False"></asp:TextBox>
&nbsp;<asp:Label ID="ag" runat="server" ForeColor="#CC3300"></asp:Label>
&nbsp;&nbsp;&nbsp;
</p>
<p>
    <asp:Label ID="lgen" runat="server" Text="Gender:&nbsp;&nbsp;" Visible="False"></asp:Label>
    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
    <asp:DropDownList ID="gender" runat="server" Enabled="False" Visible="False">
        <asp:ListItem>Male</asp:ListItem>
        <asp:ListItem>Female</asp:ListItem>
    </asp:DropDownList>
&nbsp;</p>
<p>
    <asp:Label ID="lem" runat="server" Text="Email:" Visible="False"></asp:Label>
    &nbsp;&nbsp;&nbsp;
    <asp:TextBox ID="email" runat="server" Enabled="False" Visible="False"></asp:TextBox>
&nbsp;<asp:Label ID="em" runat="server" ForeColor="#CC3300"></asp:Label>
</p>
<p>
    <asp:Label ID="lun" runat="server" Text="Username:" Visible="False"></asp:Label>
    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
    <asp:TextBox ID="username" runat="server" Enabled="False" Visible="False"></asp:TextBox>
&nbsp;<asp:Label ID="un" runat="server" ForeColor="#CC3300"></asp:Label>
</p>
<p>
    <asp:Label ID="lpw" runat="server" Text="Password:" Visible="False"></asp:Label>
    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
    <asp:TextBox ID="pass" runat="server" TextMode="Password" Enabled="False" 
        Visible="False"></asp:TextBox>
&nbsp;<asp:Label ID="pw" runat="server" ForeColor="#CC3300"></asp:Label>
</p>
    <p>
        <asp:Label ID="lpw2" runat="server" Text="Re-type Pass:" Visible="False"></asp:Label>
        &nbsp;&nbsp;&nbsp;&nbsp;
        <asp:TextBox ID="pass2" runat="server" TextMode="Password" Enabled="False" 
            Visible="False"></asp:TextBox>
&nbsp;<asp:Label ID="pw2" runat="server" ForeColor="#CC3300"></asp:Label>
</p>
    <p>
        <asp:Label ID="ladm" runat="server" Text="Admin?" Visible="False"></asp:Label>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
    <asp:DropDownList ID="admin" runat="server" Visible="False">
        <asp:ListItem>n</asp:ListItem>
        <asp:ListItem>y</asp:ListItem>
    </asp:DropDownList>
    </p>
    <p>
        <asp:Button ID="bedit" runat="server" Text="Edit" Visible="False" />
&nbsp;&nbsp;&nbsp;
        <asp:Button ID="badd" runat="server" Text="Add Record" Visible="False" />
&nbsp;&nbsp;&nbsp;
        <asp:Button ID="bdelete" runat="server" Text="Delete Record" Visible="False" />
    </p>
</asp:Content>
4

1 に答える 1

0

接続を開くのを忘れた可能性がありますか?これを編集できますか

conn2.Open

この行の前:

Dim cload As New OleDb.OleDbDataAdapter("select * from sample where username='" & Session("uname") & "'", conn2)
于 2013-09-19T07:32:25.203 に答える