DNNモジュールにチェックを追加して、特定のユーザーがログイン時にいくつかの質問に答える必要がないようにします。個々の役割をハードコーディングする代わりに、特定の役割グループ内のユーザーを除外したいと思います。そうすれば、将来さらに多くの役割がある場合、それらを除外したい場合は、それらを役割グループに追加することができます。
ただし、ユーザーがロールグループに属しているかどうかを確認する方法がわかりません。私は役割を確認する方法を知っていますが、グループが1つになっている場合はそうではありません。
解決策:これが、得られた回答に基づいてまとめたコードです。動作するはずです。
RoleGroupInfo RoleGrp = RoleController.GetRoleGroupByName(this.PortalId, "Role Group");
bool bShouldSkipQuestions = false;
if (RoleGrp != null)
{
Dictionary<string, RoleInfo> GroupChk = RoleGrp.Roles;
if (GroupChk.Count > 0)
{
foreach (var item in GroupChk.Values)
{
if (_user.IsInRole(item.RoleName))
{
bShouldSkipQuestions = true;
break;
}
}
}
}