我有一个测试方法,用于测试用户是否添加到角色。 但我添加该角色的用户不起作用。有人可以解释我做错了吗?
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);
答案 0 :(得分:1)
您的代码不会按原样编译。
roleProv.AddUsersToRoles(usernames, roleNames);eNames); //syntax error probably
假设AddUsersToRoles
有3个参数,请尝试:
roleProv.AddUsersToRoles(usernames, roleNames, eNames);
我在代码中没有看到定义了eNames
,但我也假设你在这里只有一个基本的语法问题。
注意你的IDE。它可能会告诉你问题是什么。
此外,如果您只是搞砸了在这里复制代码,我们无法说明为什么AddUsersToRoles
无法正常运行,因为您没有包含该代码。
将来,请包含相关代码。说“它不起作用”告诉我们你的问题。编译错误?运行时异常?出乎意料的行为?