2008-10-01 57 views

回答

1

这种错误可能是由社区服务器如果发现不是用户抛出MemberRoleProfileProvider的实例。

见CommunityServer.Users AddMembershipDataToUser()作为一个例子

UPDATE:


我被注意到,用户名是存储在两个表中解决了这个问题,我的情况 - cs_Users和aspnet_Users。不知何故,每个表中的用户名都是不同的。手动更新名称是相同的,解决了这个问题。

此外,用户会冷落成员的以下行的存储过程cs_Membership_GetUsersByName的:

INSERT INTO @tbUsers 
    SELECT UserId 
    FROM dbo.aspnet_Users ar, @tbNames t 
    WHERE LOWER(t.Name) = ar.LoweredUserName AND ar.ApplicationId = @ApplicationId 

的@tbNames是名称的表格来自cs_Users在某些时候和(?)因此用户名不匹配,并且用户以后未插入到结果中。


参见:http://dev.communityserver.com/forums/t/490899.aspx?PageIndex=2

1

与其说是一个答案,但你可以找到通过运行下面的查询受影响的数据条目...

Select * 
FROM cs_Posts 
Where UserID Not In (Select UserID 
        From cs_Users Where UserAccountStatus = 2)