Asp.net 基于登录用户获取sql数据

Asp.net 基于登录用户获取sql数据,asp.net,sql-server,Asp.net,Sql Server,我正在使用Visual Studio 2010 professional和SQL server 2008 R2 express 我试图做的是检测谁是登录用户,并在gridview中显示他们的详细信息。登录用户已使用asp.net身份验证,我已允许用户使用登录过程访问页面,他们已将“用户”角色设置为允许。管理员帐户可以从gridview查看帐户中的所有用户,但我也希望登录用户在members部分查看他们自己的详细信息 后面的代码中显示了这一点 Protected Sub Page_Load(sen

我正在使用Visual Studio 2010 professional和SQL server 2008 R2 express

我试图做的是检测谁是登录用户,并在gridview中显示他们的详细信息。登录用户已使用asp.net身份验证,我已允许用户使用登录过程访问页面,他们已将“用户”角色设置为允许。管理员帐户可以从gridview查看帐户中的所有用户,但我也希望登录用户在members部分查看他们自己的详细信息

后面的代码中显示了这一点

Protected Sub Page_Load(sender As Object, e As System.EventArgs)
Session("MemberDetails") = User.Identity.Name
End Sub
这在主页上

<asp:Gridview>
<Columns>
<asp:BoundField DataField="username" HeaderText="username" />
<$ many more fields here--$>
</Columns>
</asp:GridView>

<asp:SqlDataSource ID="SqlDataSource1" runat="server" 
ConnectionString="<%$ ConnectionStrings:ConnectionString %>" 
SelectCommand="SELECT username, salutation, fname, sname, address, suburb, postcode, dayphone FROM member WHERE (username = @username)">
<SelectParameters>
<asp:SessionParameter Name="username" SessionField="MemberDetails" />
</SelectParameters>
</asp:SqlDataSource>


所有这些都应该可以工作,但我得到的是一个空白页。

您的GridView标记不完整,尤其是
DataSourceID=“SqlDataSource1”


您的GridView标记不完整,尤其是
DataSourceID=“SqlDataSource1”


此vb代码隐藏修复了我的问题:

Protected Sub SqlDataSource1_Selecting(ByVal sender As Object, ByVal e As SqlDataSourceSelectingEventArgs) Handles SqlDataSource1.Selecting
        e.Command.Parameters(0).Value = Me.User.Identity.Name
    End Sub

此vb代码修复了我的问题:

Protected Sub SqlDataSource1_Selecting(ByVal sender As Object, ByVal e As SqlDataSourceSelectingEventArgs) Handles SqlDataSource1.Selecting
        e.Command.Parameters(0).Value = Me.User.Identity.Name
    End Sub

您使用的是IIS还是Visual Studio 2010附带的捆绑式开发服务器?另外,您可以发布web.config中显示表单身份验证部分的部分吗?我想看看你的web.config配置是否正确。捆绑开发服务器,这是web.config。。。嗯,想发布更多代码吗?根据网站规则,我不能再添加8小时的代码,但请确认我用于登录和验证的asp.net webconfig文件是正确的,它以前工作过,文件是通过创建完整的网站创建的。GridView中的主网站缺少很多初始化,喜欢与数据源的连接。按F12。任何地方都有错误吗?您使用的是IIS还是Visual Studio 2010附带的捆绑开发服务器?另外,您可以发布web.config中显示表单身份验证部分的部分吗?我想看看你的web.config配置是否正确。捆绑开发服务器,这是web.config。。。嗯,想发布更多代码吗?根据网站规则,我不能再添加8小时的代码,但请确认我用于登录和验证的asp.net webconfig文件是正确的,它以前工作过,文件是通过创建完整的网站创建的。GridView中的主网站缺少很多初始化,喜欢与数据源的连接。按F12。任何地方都有错误吗?对不起,为了简洁起见,我没有发布整个gridview,但是行在那里。当我配置源代码时,gridview是通过GUI自动生成的。我假设我的问题在代码隐藏或“where username…session parameters area抱歉,为了简洁起见,我没有发布整个gridview,但行在那里。gridview是在配置源代码时通过GUI自动生成的。我假设我的问题在代码隐藏或其中用户名…会话参数区域