Vb.net 列表-仅当GUID不';不存在

Vb.net 列表-仅当GUID不';不存在,vb.net,list,Vb.net,List,在将项目添加到列表(clsUser)之前,我检查列表中是否不存在具有相同GUID的clsUser 目前,我检查是否存在如下情况: Public Function GUIDExists(ByRef uList As List (Of clsUser), ByVal uGUID As String) As Boolean For Each nItem As clsUser In uList If nItem.GUID = uGUID Then Ret

在将项目添加到列表(clsUser)之前,我检查列表中是否不存在具有相同GUID的clsUser

目前,我检查是否存在如下情况:

Public Function GUIDExists(ByRef uList As List (Of clsUser), ByVal uGUID As String) As Boolean

    For Each nItem As clsUser In uList
        If nItem.GUID = uGUID Then
            Return True
        End If
    Next

    Return False

End Function
我非常希望简化它,并将此检查添加到(clsUser)列表中,这样我就不必反复编写相同的代码

有些人喜欢MyList.AddIfGUIDDoesntExists(nNewUser)

这可能吗?
如果是,有人能告诉我怎么做吗?

List(Of T)内置了Contains()方法。uList不需要是ByRefList(Of T)内置了Contains()方法。uList不需要是ByRef
Imports System.Runtime.CompilerServices    

Public Module ExtensionMethods
    <Extension()> 
    Public Sub AddIfGUIDDoesntExists(ByRef inputList As List(Of clsUser), _
             ByVal item As clsUser)
        Dim contains As Boolean = False
        For Each i As clsUser In inputList
            If (i.GUID = item.GUID) Then
                 contains = True
                 Exit For
            End If
        Next
        If Not contains
            inputList.Add(item)
        End If
    End Sub
End Module
MyList.AddIfGUIDDoesntExists(nNewUser)