0

ユーザーがロールに追加されるかどうかをテストするテストメソッドがあります。しかし、その役割にユーザーを追加しても機能しません。誰かが私が間違っていることを説明できますか?

 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);
4

1 に答える 1

1

コードはそのままではコンパイルされません。

roleProv.AddUsersToRoles(usernames, roleNames);eNames); //syntax error probably

AddUsersToRoles3つのパラメータがあると仮定して、これを試してください:

roleProv.AddUsersToRoles(usernames, roleNames, eNames);

が定義されているコードはわかりませんeNamesが、ここで基本的な構文の問題があるだけだと思います。

IDE に注意してください。それはおそらく問題が何であるかをあなたに伝えています。

さらに、ここにコードをコピーしてしまった場合、AddUsersToRolesそのコードが含まれていないため、正しく機能しない理由を知る方法がありません。

将来的には、関連するコードを含めます。「うまくいかない」と言っても、問題については何もわかりません。コンパイルエラー?実行時例外? 予期しない動作?

于 2013-05-23T17:29:38.837 に答える