目前,我正在处理一个迁移请求,我们需要将框架从 3.5 更改为 4.6.2。这里的问题是在更改以下方法的框架后未按预期显示结果。My.User.IsInRole()
总是返回假。
If My.User.IsInRole(nlRole.InnerText) Then
hasRole = True
Exit For
End If
另外,我使用以下代码进行了测试:
Imports System.Security.Principal
Class PrincipalCheck
Shared Function UserInRole(role As String) As Boolean
Dim currPrincipal As New WindowsPrincipal(New WindowsIdentity(Environment.UserName))
Return currPrincipal.IsInRole(role)
End Function
End Class
Public Sub StartCheck()
MsgBox(PrincipalCheck.UserInRole("MyDomain\MyGroup"))
End Sub
但没有运气。有人可以帮我解决上述问题。
如果您希望我提供更多信息,请告诉我。