在查询中使用当前登录的用户

时间:2009-06-11 14:23:58

标签: c# ms-access asp.net-membership visual-studio-express visual-web-developer

我使用VisualWebDeveloperExpress2008和Access作为会员提供商。

在某些情况下,我希望用户编辑自己的数据。这将涉及一个查询,其中UserId应该等于正在使用该站点的用户的UserID。

我希望使用WHERE UserId = ?,但我还没找到指向“?”的位置。

IDE提供了多种选择,但我不确定选择哪个。虽然它看起来很有前途但不起作用:

<SelectParameters>
    <asp:ProfileParameter Name="UserID" PropertyName="UserId" Type="Int32" />
</SelectParameters>

选择参数最好用什么?

2 个答案:

答案 0 :(得分:1)

User.Identity.Name 应该为您提供登录用户的用户名。

现在,要获取UserID,您需要使用用户名在数据库中进行检查。或者你可以使select语句使用用户名。

答案 1 :(得分:1)

尝试使用

<SelectParameters>
    <asp:SessionParameter Name="UserName" SessionField="CurrentUser" Type="String" />
</SelectParameters>

在Page_Load上插入以下内容......

Session["CurrentUser"] = User.Identity.Name;

这应该适合你。

相关问题