Much stuff
This commit is contained in:
@@ -0,0 +1,18 @@
|
||||
Imports System.Security.Principal
|
||||
|
||||
Public Class ADUser
|
||||
Public GUID As Guid
|
||||
Public SId As SecurityIdentifier
|
||||
Public samAccountName As String
|
||||
Public Surname As String
|
||||
Public GivenName As String
|
||||
Public Middlename As String
|
||||
Public Email As String
|
||||
|
||||
Public Overrides Function Equals(obj As Object) As Boolean
|
||||
Return DirectCast(obj, ADUser).samAccountName
|
||||
End Function
|
||||
Public Overrides Function ToString() As String
|
||||
Return samAccountName
|
||||
End Function
|
||||
End Class
|
||||
@@ -0,0 +1,19 @@
|
||||
Imports DigitalData.Modules.Interfaces
|
||||
|
||||
Public Class UserEqualityComparer
|
||||
Implements IEqualityComparer(Of ADUser)
|
||||
|
||||
Public Overloads Function Equals(x As ADUser, y As ADUser) As Boolean Implements IEqualityComparer(Of ADUser).Equals
|
||||
If ReferenceEquals(x, y) Then Return True
|
||||
If x Is Nothing Or y Is Nothing Then Return False
|
||||
|
||||
Return x.SId = y.SId
|
||||
End Function
|
||||
|
||||
Public Overloads Function GetHashCode(obj As ADUser) As Integer Implements IEqualityComparer(Of ADUser).GetHashCode
|
||||
If obj Is Nothing Then Return 0
|
||||
|
||||
Dim oHashCode = obj.SId.GetHashCode()
|
||||
Return oHashCode
|
||||
End Function
|
||||
End Class
|
||||
Reference in New Issue
Block a user