Enum.TryParse Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
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)
- Quelle:
- Enum.cs
- Quelle:
- Enum.cs
- Quelle:
- 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)
- Quelle:
- Enum.cs
- Quelle:
- Enum.cs
- Quelle:
- 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)
- Quelle:
- Enum.cs
- Quelle:
- Enum.cs
- Quelle:
- 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)
- Quelle:
- Enum.cs
- Quelle:
- Enum.cs
- Quelle:
- 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)
- Quelle:
- Enum.cs
- Quelle:
- Enum.cs
- Quelle:
- 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)
- Quelle:
- Enum.cs
- Quelle:
- Enum.cs
- Quelle:
- 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 value
folgen. 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 TEnum
entspricht, 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 TEnum
ist.
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 TEnum
keine 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)
- Quelle:
- Enum.cs
- Quelle:
- Enum.cs
- Quelle:
- 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 value
folgen. 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 TEnum
entspricht, 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 TEnum
ist.
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 TEnum
keine 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)
- Quelle:
- Enum.cs
- Quelle:
- Enum.cs
- Quelle:
- 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:
Feedback
https://aka.ms/ContentUserFeedback.
Bald verfügbar: Im Laufe des Jahres 2024 werden wir GitHub-Issues stufenweise als Feedbackmechanismus für Inhalte abbauen und durch ein neues Feedbacksystem ersetzen. Weitere Informationen finden Sie unterFeedback senden und anzeigen für