我有一个测试方法,用于测试用户是否被添加到角色中。 但是我将用户添加到该角色不起作用。有人可以解释我做错了什么吗?
public override void AddUsersToRoles(string[] usernames, string[] roleNames)
{
try
{
Profile.MembershipMapper memberMapper = new Profile.MembershipMapper();
memberMapper.AddUsersToRoles(_memberUtil.GetApplicationId(), usernames, roleNames);
}
catch (Exception ex)
{
throw new ProviderException("AddUsersToRoles", ex);
}
}
string sRoleName = "TestRole";
string sUsername = "test.user";//"testUserX"
// Use a known user for relationships
AsaMembershipProvider prov = this.GetMembershipProvider();
MembershipUser user = prov.GetUser(sUsername, false);
// Create a new role
AsaRoleProvider roleProv = this.GetRoleProvider();
roleProv.CreateRole(sRoleName);
// Verify that role exists
bool bRoleExists = roleProv.RoleExists(sRoleName);
Assert.IsTrue(bRoleExists);
// Add users to that role
string[] usernames = new string[] { sUsername};
string[] roleNames = new string[] { sRoleName };
//Doesnt add user
roleProv.AddUsersToRoles(usernames, roleNames);
最佳答案
您的代码不会按原样编译。
roleProv.AddUsersToRoles(usernames, roleNames);eNames); //syntax error probably
假设 AddUsersToRoles
有 3 个参数,试试这个:
roleProv.AddUsersToRoles(usernames, roleNames, eNames);
我没有在您的代码中看到定义了 eNames
的地方,但我还假设您这里只是有一个基本的语法问题。
注意您的 IDE。它可能会告诉您问题出在哪里。
此外,如果您在此处复制代码时搞砸了,我们无法说明为什么 AddUsersToRoles
无法正常运行,因为您没有包含该代码。
以后,包括相关代码。说“它不起作用”并不能说明您的问题。编译错误?运行时异常?意外行为?
关于c# - 将用户添加到该规则不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16720191/