获取MySQL成员资格提供者的当前用户ID

时间:2014-08-06 04:44:20

标签: c# mysql asp.net

我现在指的是这个教程http://www.asp.net/web-forms/tutorials/security/membership/storing-additional-user-information-cs,但我使用的是MySql成员资格提供程序而不是sql成员资格提供程序。这是教程中的代码:

protected void UserProfileDataSource_Selecting(object sender, SqlDataSourceSelectingEventArgs e)
{
    // Get a reference to the currently logged on user
    MembershipUser currentUser = Membership.GetUser();

    // Determine the currently logged on user's UserId value
    Guid currentUserId = (Guid)currentUser.ProviderUserKey;

    // Assign the currently logged on user's UserId to the @UserId parameter
    e.Command.Parameters["@UserId"].Value = currentUserId;
}

这是我的错误代码

protected void SqlDataSource1_Selecting(object sender, SqlDataSourceSelectingEventArgs e)
{
    // Get a reference to the currently logged on user
    MySql.Web.Security.MySQLMembershipProvider currentUser = MySQLMembership.GetUser();

    // Determine the currently logged on user's UserId value
    Guid currentUserId = (Guid)currentUser.ProviderUserKey;

    // Assign the currently logged on user's UserId to the @UserId parameter
    e.Command.Parameters["@id"].Value = currentUserId;
}

我的问题是如何获取当前登录的用户ID? 我也添加了mysql.web和mysql.data。我错过了什么吗?

1 个答案:

答案 0 :(得分:0)

要查看用户ID,请使用SELECT USER(),CURRENT_USER();进行记录。要查看当前记录的所有用户,请使用show processlist;SELECT * FROM INFORMATION_SCHEMA.PROCESSLIST