Enum.TryParse Methode

Definition

Konvertiert die Zeichenfolgendarstellung des Namens oder des numerischen Werts einer oder mehrerer Enumerationskonstanten in ein entsprechendes Enumerationsobjekt. Der Rückgabewert gibt an, ob die Konvertierung erfolgreich abgeschlossen wurde.

Überlädt

TryParse(Type, ReadOnlySpan<Char>, Object)

Konvertiert die Zeichenspanne der Darstellung des Namens oder numerischen Werts einer oder mehrerer aufgezählter Konstanten in ein entsprechendes enumeriertes Objekt.

TryParse(Type, String, Object)

Konvertiert die Zeichenfolgendarstellung des Namens oder des numerischen Werts einer oder mehrerer Enumerationskonstanten in ein entsprechendes Enumerationsobjekt.

TryParse(Type, ReadOnlySpan<Char>, Boolean, Object)

Konvertiert die Zeichenspanne der Darstellung des Namens oder numerischen Werts einer oder mehrerer aufgezählter Konstanten in ein entsprechendes enumeriertes Objekt. Ein Parameter gibt an, ob beim Vorgang die Groß-/Kleinschreibung nicht beachtet wird.

TryParse(Type, String, Boolean, Object)

Konvertiert die Zeichenfolgendarstellung des Namens oder des numerischen Werts einer oder mehrerer Enumerationskonstanten in ein entsprechendes Enumerationsobjekt.

TryParse<TEnum>(ReadOnlySpan<Char>, TEnum)

Konvertiert die Zeichenfolgendarstellung des Namens oder des numerischen Werts einer oder mehrerer Enumerationskonstanten in ein entsprechendes Enumerationsobjekt.

TryParse<TEnum>(String, TEnum)

Konvertiert die Zeichenfolgendarstellung des Namens oder des numerischen Werts einer oder mehrerer Enumerationskonstanten in ein entsprechendes Enumerationsobjekt. Der Rückgabewert gibt an, ob die Konvertierung erfolgreich abgeschlossen wurde.

TryParse<TEnum>(String, Boolean, TEnum)

Konvertiert die Zeichenfolgendarstellung des Namens oder des numerischen Werts einer oder mehrerer Enumerationskonstanten in ein entsprechendes Enumerationsobjekt. Ein Parameter gibt an, ob bei der Operation die Groß- und Kleinschreibung berücksichtigt wird. Der Rückgabewert gibt an, ob die Konvertierung erfolgreich abgeschlossen wurde.

TryParse<TEnum>(ReadOnlySpan<Char>, Boolean, TEnum)

Konvertiert die Zeichenfolgendarstellung des Namens oder des numerischen Werts einer oder mehrerer Enumerationskonstanten in ein entsprechendes Enumerationsobjekt. Ein Parameter gibt an, ob bei der Operation die Groß- und Kleinschreibung berücksichtigt wird. Der Rückgabewert gibt an, ob die Konvertierung erfolgreich abgeschlossen wurde.

TryParse(Type, ReadOnlySpan<Char>, Object)

Source:
Enum.cs
Source:
Enum.cs
Source:
Enum.cs

Konvertiert die Zeichenspanne der Darstellung des Namens oder numerischen Werts einer oder mehrerer aufgezählter Konstanten in ein entsprechendes enumeriertes Objekt.

public:
 static bool TryParse(Type ^ enumType, ReadOnlySpan<char> value, [Runtime::InteropServices::Out] System::Object ^ % result);
public static bool TryParse (Type enumType, ReadOnlySpan<char> value, out object? result);
static member TryParse : Type * ReadOnlySpan<char> * obj -> bool
Public Shared Function TryParse (enumType As Type, value As ReadOnlySpan(Of Char), ByRef result As Object) As Boolean

Parameter

enumType
Type

Der für die Analyse zu verwendende Enumerationstyp.

value
ReadOnlySpan<Char>

Die Span-Darstellung des Namens oder numerischen Werts einer oder mehrerer aufgezählter Konstanten.

result
Object

Wenn diese Methode zurückgibt true, enthält eine Enumerationskonstante, die den analysierten Wert darstellt.

Gibt zurück

true, wenn die Konvertierung erfolgreich war, andernfalls false.

Ausnahmen

.NET 8 und höhere Versionen: enumType ist ein boolescher Enumerationstyp.

Gilt für:

TryParse(Type, String, Object)

Source:
Enum.cs
Source:
Enum.cs
Source:
Enum.cs

Konvertiert die Zeichenfolgendarstellung des Namens oder des numerischen Werts einer oder mehrerer Enumerationskonstanten in ein entsprechendes Enumerationsobjekt.

public:
 static bool TryParse(Type ^ enumType, System::String ^ value, [Runtime::InteropServices::Out] System::Object ^ % result);
public static bool TryParse (Type enumType, string? value, out object? result);
public static bool TryParse (Type enumType, string value, out object result);
static member TryParse : Type * string * obj -> bool
Public Shared Function TryParse (enumType As Type, value As String, ByRef result As Object) As Boolean

Parameter

enumType
Type

Der für die Analyse zu verwendende Enumerationstyp.

value
String

Die Zeichenfolgendarstellung des Namens oder des numerischen Werts einer oder mehrerer Enumerationskonstanten.

result
Object

Wenn diese Methode zurückgibt true, enthält eine Enumerationskonstante, die den analysierten Wert darstellt.

Gibt zurück

true, wenn die Konvertierung erfolgreich war, andernfalls false.

Ausnahmen

.NET 8 und höhere Versionen: enumType ist ein boolescher Enumerationstyp.

Gilt für:

TryParse(Type, ReadOnlySpan<Char>, Boolean, Object)

Source:
Enum.cs
Source:
Enum.cs
Source:
Enum.cs

Konvertiert die Zeichenspanne der Darstellung des Namens oder numerischen Werts einer oder mehrerer aufgezählter Konstanten in ein entsprechendes enumeriertes Objekt. Ein Parameter gibt an, ob beim Vorgang die Groß-/Kleinschreibung nicht beachtet wird.

public:
 static bool TryParse(Type ^ enumType, ReadOnlySpan<char> value, bool ignoreCase, [Runtime::InteropServices::Out] System::Object ^ % result);
public static bool TryParse (Type enumType, ReadOnlySpan<char> value, bool ignoreCase, out object? result);
static member TryParse : Type * ReadOnlySpan<char> * bool * obj -> bool
Public Shared Function TryParse (enumType As Type, value As ReadOnlySpan(Of Char), ignoreCase As Boolean, ByRef result As Object) As Boolean

Parameter

enumType
Type

Der für die Analyse zu verwendende Enumerationstyp.

value
ReadOnlySpan<Char>

Die Span-Darstellung des Namens oder numerischen Werts einer oder mehrerer aufgezählter Konstanten.

ignoreCase
Boolean

true, um enumType im Modus ohne Berücksichtigung von Groß-/Kleinschreibung zu lesen; false, um enumType im Modus mit Berücksichtigung von Groß-/Kleinschreibung zu lesen.

result
Object

Wenn diese Methode zurückgibt true, enthält eine Enumerationskonstante, die den analysierten Wert darstellt.

Gibt zurück

true, wenn die Konvertierung erfolgreich war, andernfalls false.

Ausnahmen

.NET 8 und höhere Versionen: enumType ist ein boolescher Enumerationstyp.

Gilt für:

TryParse(Type, String, Boolean, Object)

Source:
Enum.cs
Source:
Enum.cs
Source:
Enum.cs

Konvertiert die Zeichenfolgendarstellung des Namens oder des numerischen Werts einer oder mehrerer Enumerationskonstanten in ein entsprechendes Enumerationsobjekt.

public:
 static bool TryParse(Type ^ enumType, System::String ^ value, bool ignoreCase, [Runtime::InteropServices::Out] System::Object ^ % result);
public static bool TryParse (Type enumType, string? value, bool ignoreCase, out object? result);
public static bool TryParse (Type enumType, string value, bool ignoreCase, out object result);
static member TryParse : Type * string * bool * obj -> bool
Public Shared Function TryParse (enumType As Type, value As String, ignoreCase As Boolean, ByRef result As Object) As Boolean

Parameter

enumType
Type

Der für die Analyse zu verwendende Enumerationstyp.

value
String

Die Zeichenfolgendarstellung des Namens oder des numerischen Werts einer oder mehrerer Enumerationskonstanten.

ignoreCase
Boolean

true, um value im Modus ohne Berücksichtigung von Groß-/Kleinschreibung zu lesen; false, um value im Modus mit Berücksichtigung von Groß-/Kleinschreibung zu lesen.

result
Object

Wenn diese Methode zurückgibt true, enthält eine Enumerationskonstante, die den analysierten Wert darstellt.

Gibt zurück

true, wenn die Konvertierung erfolgreich war, andernfalls false.

Ausnahmen

.NET 8 und höhere Versionen: enumType ist ein boolescher Enumerationstyp.

Gilt für:

TryParse<TEnum>(ReadOnlySpan<Char>, TEnum)

Source:
Enum.cs
Source:
Enum.cs
Source:
Enum.cs

Konvertiert die Zeichenfolgendarstellung des Namens oder des numerischen Werts einer oder mehrerer Enumerationskonstanten in ein entsprechendes Enumerationsobjekt.

public:
generic <typename TEnum>
 where TEnum : value class static bool TryParse(ReadOnlySpan<char> value, [Runtime::InteropServices::Out] TEnum % result);
public static bool TryParse<TEnum> (ReadOnlySpan<char> value, out TEnum result) where TEnum : struct;
static member TryParse : ReadOnlySpan<char> * 'Enum -> bool (requires 'Enum : struct)
Public Shared Function TryParse(Of TEnum As Structure) (value As ReadOnlySpan(Of Char), ByRef result As TEnum) As Boolean

Typparameter

TEnum

Der Typ des result-Objekts.

Parameter

value
ReadOnlySpan<Char>

Die Span-Darstellung des Namens oder numerischen Werts einer oder mehrerer aufgezählter Konstanten.

result
TEnum

Wenn diese Methode zurückgibt true, enthält eine Enumerationskonstante, die den analysierten Wert darstellt.

Gibt zurück

true, wenn die Konvertierung erfolgreich war, andernfalls false.

Ausnahmen

TEnum ist kein Enumerationstyp.

.NET 8 und höhere Versionen: TEnum ist ein boolescher Enumerationstyp.

Gilt für:

TryParse<TEnum>(String, TEnum)

Source:
Enum.cs
Source:
Enum.cs
Source:
Enum.cs

Konvertiert die Zeichenfolgendarstellung des Namens oder des numerischen Werts einer oder mehrerer Enumerationskonstanten in ein entsprechendes Enumerationsobjekt. Der Rückgabewert gibt an, ob die Konvertierung erfolgreich abgeschlossen wurde.

public:
generic <typename TEnum>
 where TEnum : value class static bool TryParse(System::String ^ value, [Runtime::InteropServices::Out] TEnum % result);
public static bool TryParse<TEnum> (string value, out TEnum result) where TEnum : struct;
public static bool TryParse<TEnum> (string? value, out TEnum result) where TEnum : struct;
static member TryParse : string * 'Enum -> bool (requires 'Enum : struct)
Public Shared Function TryParse(Of TEnum As Structure) (value As String, ByRef result As TEnum) As Boolean

Typparameter

TEnum

Der Enumerationstyp, in den value konvertiert werden soll.

Parameter

value
String

Die Zeichenfolgendarstellung des Enumerationsnamens oder zugrunde liegenden Werts, der konvertiert werden soll. Dabei muss die Groß- und Kleinschreibung beachtet werden.

result
TEnum

Wenn diese Methode zurückgibt, enthält ein Objekt vom Typ TEnum , dessen Wert durch value dargestellt wird, wenn der Analysevorgang erfolgreich ist. Wenn der Analysevorgang fehlschlägt, enthält den Standardwert des zugrunde liegenden Typs von TEnum. Dieser Parameter wird nicht initialisiert übergeben.

Gibt zurück

true, wenn der value-Parameter erfolgreich konvertiert wurde, andernfalls false.

Ausnahmen

TEnum ist kein Enumerationstyp.

.NET 8 und höhere Versionen: TEnum ist ein boolescher Enumerationstyp.

Beispiele

Im folgenden Beispiel wird eine Colors -Enumeration definiert, die TryParse<TEnum>(String, TEnum) -Methode aufgerufen, um Zeichenfolgen in die entsprechenden Enumerationswerte zu konvertieren, und die IsDefined -Methode aufgerufen, um sicherzustellen, dass bestimmte integrale Werte zugrunde liegende Werte in der Colors Enumeration sind.

using System;

[Flags] enum Colors { None=0, Red = 1, Green = 2, Blue = 4 };

public class Example
{
   public static void Main()
   {
      string[] colorStrings = { "0", "2", "8", "blue", "Blue", "Yellow", "Red, Green" };
      foreach (string colorString in colorStrings)
      {
         Colors colorValue;
         if (Enum.TryParse(colorString, out colorValue))
            if (Enum.IsDefined(typeof(Colors), colorValue) | colorValue.ToString().Contains(","))
               Console.WriteLine("Converted '{0}' to {1}.", colorString, colorValue.ToString());
            else
               Console.WriteLine("{0} is not an underlying value of the Colors enumeration.", colorString);
         else
            Console.WriteLine("{0} is not a member of the Colors enumeration.", colorString);
      }
   }
}
// The example displays the following output:
//       Converted '0' to None.
//       Converted '2' to Green.
//       8 is not an underlying value of the Colors enumeration.
//       blue is not a member of the Colors enumeration.
//       Converted 'Blue' to Blue.
//       Yellow is not a member of the Colors enumeration.
//       Converted 'Red, Green' to Red, Green.
open System

[<Flags>]
type Colors =
    | None = 0
    | Red = 1
    | Green = 2
    | Blue = 4

let colorStrings = 
    [ "0"; "2"; "8"; "blue"; "Blue"; "Yellow"; "Red, Green" ]
for colorString in colorStrings do
    match Enum.TryParse colorString with
    | true, colorValue ->
        if Enum.IsDefined(typeof<Colors>, colorValue) || (string colorValue).Contains "," then
            printfn $"Converted '{colorString}' to {colorValue}."
        else
            printfn $"{colorString} is not an underlying value of the Colors enumeration."
    | _ ->
        printfn $"{colorString} is not a member of the Colors enumeration."
// The example displays the following output:
//       Converted '0' to None.
//       Converted '2' to Green.
//       8 is not an underlying value of the Colors enumeration.
//       blue is not a member of the Colors enumeration.
//       Converted 'Blue' to Blue.
//       Yellow is not a member of the Colors enumeration.
//       Converted 'Red, Green' to Red, Green.
<Flags> Enum Colors As Integer
   None = 0
   Red = 1
   Green = 2
   Blue = 4
End Enum

Module Example
   Public Sub Main()
      Dim colorStrings() As String = {"0", "2", "8", "blue", "Blue", "Yellow", "Red, Green"}
      For Each colorString As String In colorStrings
         Dim colorValue As Colors
         If [Enum].TryParse(colorString, colorValue) Then        
            If [Enum].IsDefined(GetType(Colors), colorValue) Or colorValue.ToString().Contains(",") Then 
               Console.WriteLine("Converted '{0}' to {1}.", colorString, colorValue.ToString())
            Else
               Console.WriteLine("{0} is not an underlying value of the Colors enumeration.", colorString)            
            End If                    
         Else
            Console.WriteLine("{0} is not a member of the Colors enumeration.", colorString)
         End If
      Next
   End Sub
End Module
' The example displays the following output:
'    Converted '0' to None.
'    Converted '2' to Green.
'    8 is not an underlying value of the Colors enumeration.
'    blue is not a member of the Colors enumeration.
'    Converted 'Blue' to Blue.
'    Yellow is not a member of the Colors enumeration.
'    Converted 'Red, Green' to Red, Green.

Hinweise

TryParse<TEnum>(String, TEnum) ist identisch mit der Parse(Type, String) -Methode, mit der Ausnahme, dass sie nicht ausgelöst, sondern zurückgegeben false wird, wenn die Konvertierung fehlschlägt. Es entfällt die Notwendigkeit der Ausnahmebehandlung beim Analysieren der Zeichenfolgendarstellung eines Enumerationswerts.

Der value Parameter enthält die Zeichenfolgendarstellung des zugrunde liegenden Werts oder der benannten Konstanten eines Enumerationselements oder eine Liste benannter Konstanten oder zugrunde liegenden Werte, die durch Kommas (,) getrennt sind. Wenn value mehrere benannte Konstanten oder Werte enthalten sind, können mindestens ein Leerzeichen vor oder nach jedem Wert, Namen oder Komma in valuefolgen. Wenn value eine Liste ist, result gibt den Wert der angegebenen Namen oder zugrunde liegenden Werte in Kombination mit einem bitweisen OR Vorgang an. Wenn value die Zeichenfolgendarstellung des Namens eines Enumerationswerts ist, wird beim Vergleich von value mit Enumerationsnamen die Groß-/Kleinschreibung beachtet.

Wenn value ein Name ist, der nicht einer benannten Konstanten von TEnumentspricht, gibt die -Methode zurück false. Wenn value die Zeichenfolgendarstellung einer ganzen Zahl ist, die keinen zugrunde liegenden Wert der TEnum Enumeration darstellt, gibt die Methode einen Enumerationsmember zurück, dessen zugrunde liegender Wert in einen integralen Typ konvertiert wird value . Wenn dieses Verhalten nicht erwünscht ist, rufen Sie die IsDefined -Methode auf, um sicherzustellen, dass eine bestimmte Zeichenfolgendarstellung einer ganzen Zahl tatsächlich ein Member von TEnumist.

Wenn der Analysevorgang fehlschlägt, enthält der result Parameter den Standardwert 0, der möglicherweise kein Member der zugrunde liegenden TEnum Enumeration ist. Wenn den benannten Konstanten in TEnumkeine Werte zugewiesen werden, ist der Standardwert gleich dem ersten Member von TEnum. Andernfalls ist der Standardwert gleich dem Member in der Enumeration mit dem zugewiesenen Wert 0.

Weitere Informationen

Gilt für:

TryParse<TEnum>(String, Boolean, TEnum)

Source:
Enum.cs
Source:
Enum.cs
Source:
Enum.cs

Konvertiert die Zeichenfolgendarstellung des Namens oder des numerischen Werts einer oder mehrerer Enumerationskonstanten in ein entsprechendes Enumerationsobjekt. Ein Parameter gibt an, ob bei der Operation die Groß- und Kleinschreibung berücksichtigt wird. Der Rückgabewert gibt an, ob die Konvertierung erfolgreich abgeschlossen wurde.

public:
generic <typename TEnum>
 where TEnum : value class static bool TryParse(System::String ^ value, bool ignoreCase, [Runtime::InteropServices::Out] TEnum % result);
public static bool TryParse<TEnum> (string value, bool ignoreCase, out TEnum result) where TEnum : struct;
public static bool TryParse<TEnum> (string? value, bool ignoreCase, out TEnum result) where TEnum : struct;
static member TryParse : string * bool * 'Enum -> bool (requires 'Enum : struct)
Public Shared Function TryParse(Of TEnum As Structure) (value As String, ignoreCase As Boolean, ByRef result As TEnum) As Boolean

Typparameter

TEnum

Der Enumerationstyp, in den value konvertiert werden soll.

Parameter

value
String

Die Zeichenfolgendarstellung des Enumerationsnamens oder zugrunde liegenden Werts, der konvertiert werden soll.

ignoreCase
Boolean

true, wenn die Groß- und Kleinschreibung nicht berücksichtigt wird. false, wenn die Groß- und Kleinschreibung berücksichtigt wird.

result
TEnum

Wenn diese Methode zurückgibt, enthält ein Objekt vom Typ TEnum , dessen Wert durch value dargestellt wird, wenn der Analysevorgang erfolgreich ist. Wenn der Analysevorgang fehlschlägt, enthält den Standardwert des zugrunde liegenden Typs von TEnum. Dieser Parameter wird nicht initialisiert übergeben.

Gibt zurück

true, wenn der value-Parameter erfolgreich konvertiert wurde, andernfalls false.

Ausnahmen

TEnum ist kein Enumerationstyp.

.NET 8 und höhere Versionen: TEnum ist ein boolescher Enumerationstyp.

Beispiele

Im folgenden Beispiel wird eine Colors -Enumeration definiert, die TryParse<TEnum>(String, Boolean, TEnum) -Methode aufgerufen, um Zeichenfolgen in die entsprechenden Enumerationswerte zu konvertieren, und die IsDefined -Methode aufgerufen, um sicherzustellen, dass bestimmte integrale Werte zugrunde liegende Werte in der Colors Enumeration sind. Die TryParse<TEnum>(String, Boolean, TEnum) -Methode verwendet einen Vergleich ohne Berücksichtigung der Groß-/Kleinschreibung, wenn versucht wird, die Zeichenfolgendarstellungen benannter Konstanten in die entsprechenden Enumerationswerte zu konvertieren.

using System;

[Flags] enum Colors { None=0, Red = 1, Green = 2, Blue = 4 };

public class Example
{
   public static void Main()
   {
      string[] colorStrings = { "0", "2", "8", "blue", "Blue", "Yellow", "Red, Green" };
      foreach (string colorString in colorStrings)
      {
         Colors colorValue;
         if (Enum.TryParse(colorString, true, out colorValue))
            if (Enum.IsDefined(typeof(Colors), colorValue) | colorValue.ToString().Contains(","))
               Console.WriteLine("Converted '{0}' to {1}.", colorString, colorValue.ToString());
            else
               Console.WriteLine("{0} is not an underlying value of the Colors enumeration.", colorString);
         else
            Console.WriteLine("{0} is not a member of the Colors enumeration.", colorString);
      }
   }
}
// The example displays the following output:
//       Converted '0' to None.
//       Converted '2' to Green.
//       8 is not an underlying value of the Colors enumeration.
//       Converted 'blue' to Blue.
//       Converted 'Blue' to Blue.
//       Yellow is not a member of the Colors enumeration.
//       Converted 'Red, Green' to Red, Green.
open System

[<Flags>]
type Colors =
    | None = 0
    | Red = 1
    | Green = 2
    | Blue = 4

let colorStrings = 
    [ "0"; "2"; "8"; "blue"; "Blue"; "Yellow"; "Red, Green" ]
for colorString in colorStrings do
    match Enum.TryParse(colorString, true) with
    | true, colorValue ->
        if Enum.IsDefined(typeof<Colors>, colorValue) || (string colorValue).Contains "," then
            printfn $"Converted '{colorString}' to {colorValue}."
        else
            printfn $"{colorString} is not an underlying value of the Colors enumeration."
    | _ ->
        printfn $"{colorString} is not a member of the Colors enumeration."
// The example displays the following output:
//       Converted '0' to None.
//       Converted '2' to Green.
//       8 is not an underlying value of the Colors enumeration.
//       Converted 'blue' to Blue.
//       Converted 'Blue' to Blue.
//       Yellow is not a member of the Colors enumeration.
//       Converted 'Red, Green' to Red, Green.
<Flags> Enum Colors As Integer
   None = 0
   Red = 1
   Green = 2
   Blue = 4
End Enum

Module Example
   Public Sub Main()
      Dim colorStrings() As String = {"0", "2", "8", "blue", "Blue", "Yellow", "Red, Green"}
      For Each colorString As String In colorStrings
         Dim colorValue As Colors
         If [Enum].TryParse(colorString, True, colorValue) Then        
            If [Enum].IsDefined(GetType(Colors), colorValue) Or colorValue.ToString().Contains(",") Then 
               Console.WriteLine("Converted '{0}' to {1}.", colorString, colorValue.ToString())
            Else
               Console.WriteLine("{0} is not an underlying value of the Colors enumeration.", colorString)            
            End If                    
         Else
            Console.WriteLine("{0} is not a member of the Colors enumeration.", colorString)
         End If
      Next
   End Sub
End Module
' The example displays the following output:
'       Converted '0' to None.
'       Converted '2' to Green.
'       8 is not an underlying value of the Colors enumeration.
'       Converted 'blue' to Blue.
'       Converted 'Blue' to Blue.
'       Yellow is not a member of the Colors enumeration.
'       Converted 'Red, Green' to Red, Green.

Hinweise

TryParse<TEnum>(String, Boolean, TEnum) ist identisch mit der Parse(Type, String, Boolean) -Methode, mit der Ausnahme, dass sie nicht ausgelöst, sondern zurückgegeben false wird, wenn die Konvertierung fehlschlägt. Es entfällt die Notwendigkeit der Ausnahmebehandlung beim Analysieren der Zeichenfolgendarstellung eines Enumerationswerts.

Der value Parameter enthält die Zeichenfolgendarstellung des zugrunde liegenden Werts oder der benannten Konstanten eines Enumerationselements oder eine Liste benannter Konstanten oder zugrunde liegenden Werte, die durch Kommas (,) getrennt sind. Wenn value mehrere benannte Konstanten oder Werte enthalten sind, können mindestens ein Leerzeichen vor oder nach jedem Wert, Namen oder Komma in valuefolgen. Wenn value eine Liste ist, result gibt den Wert der angegebenen Namen oder zugrunde liegenden Werte in Kombination mit einem bitweisen OR Vorgang an. Wenn value die Zeichenfolgendarstellung des Namens eines Enumerationswerts ist, hängt der Vergleich von value mit Enumerationsnamen vom Parameter ab ignoreCase . Wenn true, wird beim Vergleich die Groß-/Kleinschreibung nicht beachtet, wenn false, wird die Groß-/Kleinschreibung beachtet.

Wenn value ein Name ist, der nicht einer benannten Konstanten von TEnumentspricht, gibt die -Methode zurück false. Wenn value die Zeichenfolgendarstellung einer ganzen Zahl ist, die keinen zugrunde liegenden Wert der TEnum Enumeration darstellt, gibt die Methode einen Enumerationsmember zurück, dessen zugrunde liegender Wert in einen integralen Typ konvertiert wird value . Wenn dieses Verhalten nicht erwünscht ist, rufen Sie die IsDefined -Methode auf, um sicherzustellen, dass eine bestimmte Zeichenfolgendarstellung einer ganzen Zahl tatsächlich ein Member von TEnumist.

Wenn der Analysevorgang fehlschlägt, enthält der result Parameter den Standardwert 0, der möglicherweise kein Member der zugrunde liegenden TEnum Enumeration ist. Wenn den benannten Konstanten in TEnumkeine Werte zugewiesen werden, ist der Standardwert gleich dem ersten Member von TEnum. Andernfalls ist der Standardwert gleich dem Member in der Enumeration mit dem zugewiesenen Wert 0.

Weitere Informationen

Gilt für:

TryParse<TEnum>(ReadOnlySpan<Char>, Boolean, TEnum)

Source:
Enum.cs
Source:
Enum.cs
Source:
Enum.cs

Konvertiert die Zeichenfolgendarstellung des Namens oder des numerischen Werts einer oder mehrerer Enumerationskonstanten in ein entsprechendes Enumerationsobjekt. Ein Parameter gibt an, ob bei der Operation die Groß- und Kleinschreibung berücksichtigt wird. Der Rückgabewert gibt an, ob die Konvertierung erfolgreich abgeschlossen wurde.

public:
generic <typename TEnum>
 where TEnum : value class static bool TryParse(ReadOnlySpan<char> value, bool ignoreCase, [Runtime::InteropServices::Out] TEnum % result);
public static bool TryParse<TEnum> (ReadOnlySpan<char> value, bool ignoreCase, out TEnum result) where TEnum : struct;
static member TryParse : ReadOnlySpan<char> * bool * 'Enum -> bool (requires 'Enum : struct)
Public Shared Function TryParse(Of TEnum As Structure) (value As ReadOnlySpan(Of Char), ignoreCase As Boolean, ByRef result As TEnum) As Boolean

Typparameter

TEnum

Der Typ des result-Objekts.

Parameter

value
ReadOnlySpan<Char>

Die Span-Darstellung des Namens oder numerischen Werts einer oder mehrerer aufgezählter Konstanten.

ignoreCase
Boolean

true, wenn die Groß- und Kleinschreibung nicht berücksichtigt wird. false, wenn die Groß- und Kleinschreibung berücksichtigt wird.

result
TEnum

Wenn diese Methode zurückgibt true, enthält eine Enumerationskonstante, die den analysierten Wert darstellt.

Gibt zurück

true, wenn die Konvertierung erfolgreich war, andernfalls false.

Ausnahmen

TEnum ist kein Enumerationstyp.

.NET 8 und höhere Versionen: TEnum ist ein boolescher Enumerationstyp.

Gilt für: