Suchen von Ansprüchen in einem ClaimSet

Bei der Verwendung der anspruchbasierten Autorisierung muss häufig der Inhalt eines ClaimSet für bestimmte Anspruchstypen überprüft werden.Verwenden Sie die FindClaims-Methode, um ClaimSet auf das Vorhandensein eines bestimmten Anspruchs zu überprüfen.Diese Methode ist leistungsstärker als eine direkte Iteration über ClaimSet.Im folgenden Beispiel wird diese Verwendung veranschaulicht.Beachten Sie, dass die Parameter claimType und claimRight``null sein können.In diesem Fall entsprechen die Parameter allen Anspruchstypen und Anspruchsrechten.

Beispiel

// The FindSomeClaims method looks in the provided ClaimSet for Claims of the specified type and right. 
   // It returns such Claims in a list.
public static IList<Claim> FindSomeClaims ( ClaimSet cs, string type, string right )
{
  // Create an empty list
  IList<Claim> claims = new List<Claim>();

  // Call ClaimSet.FindClaims with the specified type and right. Iterate over the result...
  foreach(Claim c in cs.FindClaims ( type, right ))
	//...adding each claim to the list
	claims.Add ( c );

  // Return the list
  return claims;
}
' The FindSomeClaims method looks in the provided ClaimSet for Claims of the specified type and right. 
' It returns such Claims in a list.
Public Shared Function FindSomeClaims(ByVal cs As ClaimSet, _
                                      ByVal type As String, _
                                      ByVal right As String) As IList(Of Claim)
    ' Create an empty list
    Dim claims As New List(Of Claim)()

    ' Call ClaimSet.FindClaims with the specified type and right. Iterate over the result...
    For Each c In cs.FindClaims(type, right)
        '...adding each claim to the list
        claims.Add(c)
    Next c

    ' Return the list
    Return claims
End Function

Siehe auch

Verwalten von Ansprüchen und Autorisierung mit dem Identitätsmodell