在AMO(应用程序管理对象)的帮助下,能够找到一个解决方案,用c#代码清除多维数据集中特定角色的成员。 我使用的简单代码是:
Role role = new Role();
role = db.Roles.FindByName("roleName1");
role.Members.Clear();
role.Update()
现在我似乎有一种情况。我之前不知道我在“FindByName”函数中传递的roleName参数。 我以前不知道RoleName。 任何想法,以便如何获得立方体的角色名称?
答案 0 :(得分:0)
您可以使用
foreach(Role role in db.Roles) {
if(<some condition, possibly using properties like role.Name>) {
role.Members.Clear();
role.Update();
}
}
您可以在此处找到Role
课程的属性和方法:http://msdn.microsoft.com/en-us/library/microsoft.analysisservices.role.aspx。
答案 1 :(得分:0)
最后得到了:)
foreach (Microsoft.AnalysisServices.Role CubeDbRole in db.Roles)
{
string Rolename = CubeDbRole.Name;
MessageBox.Show(Rolename);
CubeDbRole.Members.Clear();
CubeDbRole.Update();
foreach (Microsoft.AnalysisServices.RoleMember CubeRoleMember in CubeDbRole.Members)
{
//In case you want to display members
MessageBox.Show(CubeRoleMember);
}
}
谢谢:)