Hi,
In AMO, how do I check if role member is existing in Role? I have this command (VB.net):
If UserRole1.Members.Contains(mydatareader(0)) = true then
.
.
end if
But it keeps having an error:
Unable to cast object of type 'System.String' to type 'Microsoft.AnalysisServices.RoleMember'.
How do i check properly?
thanks .
cherriesh
The contains function expects a MemberRole reference, not a string. I can't see anyway of checking directly if a role contains a given member name so you would have to loop over the collection. Something like the following should work. Note: I have coded this off the top of my head so I hope that I have not made any typo's but you should get the general idea.
Code Snippet
If RoleContains(UserRole1, mydatareader(0)) then
.
.
end if
Function RoleContains( myRole as Role, memberName as string)
For each rm as RoleMember in myRole.Members
'// I have used string.compare to do a case-insensitive compare
If string.compare(rm.Name, memberName,true) = 0 then
return true
End If
Next
Return false
End Function
No comments:
Post a Comment