Enum.TryParse Yöntem

Tanım

Bir veya daha fazla numaralandırılmış sabitin adının veya sayısal değerinin dize gösterimini eşdeğer bir numaralandırılmış nesneye dönüştürür. Dönüş değeri, dönüştürmenin başarılı olup olmadığını gösterir.

Aşırı Yüklemeler

TryParse(Type, ReadOnlySpan<Char>, Object)

Bir veya daha fazla numaralandırılmış sabitin adının veya sayısal değerinin karakter gösteriminin aralığını eşdeğer bir numaralandırılmış nesneye dönüştürür.

TryParse(Type, String, Object)

Bir veya daha fazla numaralandırılmış sabitin adının veya sayısal değerinin dize gösterimini eşdeğer bir numaralandırılmış nesneye dönüştürür.

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

Bir veya daha fazla numaralandırılmış sabitin adının veya sayısal değerinin karakter gösteriminin aralığını eşdeğer bir numaralandırılmış nesneye dönüştürür. Parametresi, işlemin büyük/küçük harfe duyarlı olup olmadığını belirtir.

TryParse(Type, String, Boolean, Object)

Bir veya daha fazla numaralandırılmış sabitin adının veya sayısal değerinin dize gösterimini eşdeğer bir numaralandırılmış nesneye dönüştürür.

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

Bir veya daha fazla numaralandırılmış sabitin adının veya sayısal değerinin dize gösterimini eşdeğer bir numaralandırılmış nesneye dönüştürür.

TryParse<TEnum>(String, TEnum)

Bir veya daha fazla numaralandırılmış sabitin adının veya sayısal değerinin dize gösterimini eşdeğer bir numaralandırılmış nesneye dönüştürür. Dönüş değeri, dönüştürmenin başarılı olup olmadığını gösterir.

TryParse<TEnum>(String, Boolean, TEnum)

Bir veya daha fazla numaralandırılmış sabitin adının veya sayısal değerinin dize gösterimini eşdeğer bir numaralandırılmış nesneye dönüştürür. Parametresi, işlemin büyük/küçük harfe duyarlı olup olmadığını belirtir. Dönüş değeri, dönüştürmenin başarılı olup olmadığını gösterir.

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

Bir veya daha fazla numaralandırılmış sabitin adının veya sayısal değerinin dize gösterimini eşdeğer bir numaralandırılmış nesneye dönüştürür. Parametresi, işlemin büyük/küçük harfe duyarlı olup olmadığını belirtir. Dönüş değeri, dönüştürmenin başarılı olup olmadığını gösterir.

TryParse(Type, ReadOnlySpan<Char>, Object)

Kaynak:
Enum.cs
Kaynak:
Enum.cs
Kaynak:
Enum.cs

Bir veya daha fazla numaralandırılmış sabitin adının veya sayısal değerinin karakter gösteriminin aralığını eşdeğer bir numaralandırılmış nesneye dönüştürür.

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

Parametreler

enumType
Type

Ayrıştırma için kullanılacak sabit listesi türü.

value
ReadOnlySpan<Char>

Bir veya daha fazla numaralandırılmış sabitin adının veya sayısal değerinin span gösterimi.

result
Object

Bu yöntem truedöndürdüğünde, ayrıştırılan değeri temsil eden bir numaralandırma sabiti içerir.

Döndürülenler

Dönüştürmenin başarılı olup olmadığını true; false.

Özel durumlar

.NET 8 ve sonraki sürümleri: enumType Boole destekli bir numaralandırma türüdür.

Şunlara uygulanır

TryParse(Type, String, Object)

Kaynak:
Enum.cs
Kaynak:
Enum.cs
Kaynak:
Enum.cs

Bir veya daha fazla numaralandırılmış sabitin adının veya sayısal değerinin dize gösterimini eşdeğer bir numaralandırılmış nesneye dönüştürür.

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

Parametreler

enumType
Type

Ayrıştırma için kullanılacak sabit listesi türü.

value
String

Bir veya daha fazla numaralandırılmış sabitin adının veya sayısal değerinin dize gösterimi.

result
Object

Bu yöntem truedöndürdüğünde, ayrıştırılan değeri temsil eden bir numaralandırma sabiti içerir.

Döndürülenler

Dönüştürmenin başarılı olup olmadığını true; false.

Özel durumlar

.NET 8 ve sonraki sürümleri: enumType Boole destekli bir numaralandırma türüdür.

Şunlara uygulanır

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

Kaynak:
Enum.cs
Kaynak:
Enum.cs
Kaynak:
Enum.cs

Bir veya daha fazla numaralandırılmış sabitin adının veya sayısal değerinin karakter gösteriminin aralığını eşdeğer bir numaralandırılmış nesneye dönüştürür. Parametresi, işlemin büyük/küçük harfe duyarlı olup olmadığını belirtir.

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

Parametreler

enumType
Type

Ayrıştırma için kullanılacak sabit listesi türü.

value
ReadOnlySpan<Char>

Bir veya daha fazla numaralandırılmış sabitin adının veya sayısal değerinin span gösterimi.

ignoreCase
Boolean

Duyarsız modda enumType okunmasını true; Hassas modda enumType okumak için false.

result
Object

Bu yöntem truedöndürdüğünde, ayrıştırılan değeri temsil eden bir numaralandırma sabiti içerir.

Döndürülenler

Dönüştürmenin başarılı olup olmadığını true; false.

Özel durumlar

.NET 8 ve sonraki sürümleri: enumType Boole destekli bir numaralandırma türüdür.

Şunlara uygulanır

TryParse(Type, String, Boolean, Object)

Kaynak:
Enum.cs
Kaynak:
Enum.cs
Kaynak:
Enum.cs

Bir veya daha fazla numaralandırılmış sabitin adının veya sayısal değerinin dize gösterimini eşdeğer bir numaralandırılmış nesneye dönüştürür.

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

Parametreler

enumType
Type

Ayrıştırma için kullanılacak sabit listesi türü.

value
String

Bir veya daha fazla numaralandırılmış sabitin adının veya sayısal değerinin dize gösterimi.

ignoreCase
Boolean

Duyarsız modda value okunmasını true; Hassas modda value okumak için false.

result
Object

Bu yöntem truedöndürdüğünde, ayrıştırılan değeri temsil eden bir numaralandırma sabiti içerir.

Döndürülenler

Dönüştürmenin başarılı olup olmadığını true; false.

Özel durumlar

.NET 8 ve sonraki sürümleri: enumType Boole destekli bir numaralandırma türüdür.

Şunlara uygulanır

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

Kaynak:
Enum.cs
Kaynak:
Enum.cs
Kaynak:
Enum.cs

Bir veya daha fazla numaralandırılmış sabitin adının veya sayısal değerinin dize gösterimini eşdeğer bir numaralandırılmış nesneye dönüştürür.

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

Tür Parametreleri

TEnum

result nesnesinin türü.

Parametreler

value
ReadOnlySpan<Char>

Bir veya daha fazla numaralandırılmış sabitin adının veya sayısal değerinin span gösterimi.

result
TEnum

Bu yöntem truedöndürdüğünde, ayrıştırılan değeri temsil eden bir numaralandırma sabiti içerir.

Döndürülenler

Dönüştürmenin başarılı olup olmadığını true; false.

Özel durumlar

TEnum bir numaralandırma türü değildir.

.NET 8 ve sonraki sürümleri: TEnum Boole destekli bir numaralandırma türüdür.

Şunlara uygulanır

TryParse<TEnum>(String, TEnum)

Kaynak:
Enum.cs
Kaynak:
Enum.cs
Kaynak:
Enum.cs

Bir veya daha fazla numaralandırılmış sabitin adının veya sayısal değerinin dize gösterimini eşdeğer bir numaralandırılmış nesneye dönüştürür. Dönüş değeri, dönüştürmenin başarılı olup olmadığını gösterir.

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

Tür Parametreleri

TEnum

valuedönüştürülecek numaralandırma türü.

Parametreler

value
String

Dönüştürülecek numaralandırma adının veya temel alınan değerin büyük/küçük harfe duyarlı dize gösterimi.

result
TEnum

Bu yöntem döndürdüğünde, ayrıştırma işlemi başarılı olursa değeri value ile temsil edilen TEnum türünde bir nesne içerir. Ayrıştırma işlemi başarısız olursa, temel alınan TEnumtürünün varsayılan değerini içerir. Bu parametre başlatılmamış olarak geçirilir.

Döndürülenler

value parametresinin başarıyla dönüştürüldüğünü true; aksi takdirde, false.

Özel durumlar

TEnum bir numaralandırma türü değildir.

.NET 8 ve sonraki sürümleri: TEnum Boole destekli bir numaralandırma türüdür.

Örnekler

Aşağıdaki örnek bir Colors sabit listesi tanımlar, dizeleri karşılık gelen numaralandırma değerlerine dönüştürmek için TryParse<TEnum>(String, TEnum) yöntemini çağırır ve belirli integral değerlerinin Colors numaralandırmasında temel alınan değerler olduğundan emin olmak için IsDefined yöntemini çağırır.

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.

Açıklamalar

TryParse<TEnum>(String, TEnum) Parse(Type, String) yöntemiyle aynıdır, ancak özel durum oluşturmak yerine dönüştürme başarısız olursa false döndürür. Bir sabit listesi değerinin dize gösterimi ayrıştırıldığında özel durum işleme gereksinimini ortadan kaldırır.

value parametresi, numaralandırma üyesinin temel alınan değerinin veya adlandırılmış sabitinin dize gösterimini ya da virgülle (,) sınırlandırılmış adlandırılmış sabitlerin veya temel alınan değerlerin listesini içerir. value birden çok adlandırılmış sabit veya değer içeriyorsa, valueiçindeki her değer, ad veya virgülden önce bir veya daha fazla boş alan olabilir veya izleyebilir. value bir listeyse, result belirtilen adların veya temel alınan değerlerin değerini bit düzeyinde OR işlemiyle birleştirir. value bir numaralandırma değerinin adının dize gösterimiyse, value numaralandırma adlarıyla karşılaştırması büyük/küçük harfe duyarlıdır.

value TEnumadlandırılmış sabitine karşılık olmayan bir adsa, yöntemi falsedöndürür. value, TEnum numaralandırmasının temel alınan değerini temsil etmeyen bir tamsayının dize gösterimiyse, yöntemi temel alınan değeri value tamsayı türüne dönüştürülmüş bir numaralandırma üyesi döndürür. Bu davranış istenmeyen bir davranışsa, bir tamsayının belirli bir dize gösteriminin aslında TEnumüyesi olduğundan emin olmak için IsDefined yöntemini çağırın.

Ayrıştırma işlemi başarısız olursa result parametresi, temel alınan TEnum numaralandırmasının üyesi olmayan varsayılan 0 değerini içerir. TEnumiçinde adlandırılmış sabitlere hiçbir değer atanmazsa, varsayılan değer TEnumilk üyesine eşittir. Aksi takdirde varsayılan değer, atanmış değeri 0 olan numaralandırmadaki üyeye eşittir.

Ayrıca bkz.

Şunlara uygulanır

TryParse<TEnum>(String, Boolean, TEnum)

Kaynak:
Enum.cs
Kaynak:
Enum.cs
Kaynak:
Enum.cs

Bir veya daha fazla numaralandırılmış sabitin adının veya sayısal değerinin dize gösterimini eşdeğer bir numaralandırılmış nesneye dönüştürür. Parametresi, işlemin büyük/küçük harfe duyarlı olup olmadığını belirtir. Dönüş değeri, dönüştürmenin başarılı olup olmadığını gösterir.

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

Tür Parametreleri

TEnum

valuedönüştürülecek numaralandırma türü.

Parametreler

value
String

Dönüştürülecek numaralandırma adının veya temel alınan değerin dize gösterimi.

ignoreCase
Boolean

Büyük/küçük harf yoksaymak için true; false dikkate alın.

result
TEnum

Bu yöntem döndürdüğünde, ayrıştırma işlemi başarılı olursa değeri value ile temsil edilen TEnum türünde bir nesne içerir. Ayrıştırma işlemi başarısız olursa, temel alınan TEnumtürünün varsayılan değerini içerir. Bu parametre başlatılmamış olarak geçirilir.

Döndürülenler

value parametresinin başarıyla dönüştürüldüğünü true; aksi takdirde, false.

Özel durumlar

TEnum bir numaralandırma türü değildir.

.NET 8 ve sonraki sürümleri: TEnum Boole destekli bir numaralandırma türüdür.

Örnekler

Aşağıdaki örnek bir Colors sabit listesi tanımlar, dizeleri karşılık gelen numaralandırma değerlerine dönüştürmek için TryParse<TEnum>(String, Boolean, TEnum) yöntemini çağırır ve belirli integral değerlerinin Colors numaralandırmasında temel alınan değerler olduğundan emin olmak için IsDefined yöntemini çağırır. TryParse<TEnum>(String, Boolean, TEnum) yöntemi, adlandırılmış sabitlerin dize gösterimlerini eşdeğer numaralandırma değerlerine dönüştürmeye çalışırken büyük/küçük harfe duyarsız karşılaştırma kullanır.

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.

Açıklamalar

TryParse<TEnum>(String, Boolean, TEnum) Parse(Type, String, Boolean) yöntemiyle aynıdır, ancak özel durum oluşturmak yerine dönüştürme başarısız olursa false döndürür. Bir sabit listesi değerinin dize gösterimi ayrıştırıldığında özel durum işleme gereksinimini ortadan kaldırır.

value parametresi, numaralandırma üyesinin temel alınan değerinin veya adlandırılmış sabitinin dize gösterimini ya da virgülle (,) sınırlandırılmış adlandırılmış sabitlerin veya temel alınan değerlerin listesini içerir. value birden çok adlandırılmış sabit veya değer içeriyorsa, valueiçindeki her değer, ad veya virgülden önce bir veya daha fazla boş alan olabilir veya izleyebilir. value bir listeyse, result belirtilen adların veya temel alınan değerlerin değerini bit düzeyinde OR işlemiyle birleştirir. value bir numaralandırma değerinin adının dize gösterimiyse, value numaralandırma adlarıyla karşılaştırması ignoreCase parametresine bağlıdır. truekarşılaştırma büyük/küçük harfe duyarlı değildir; falseise büyük/küçük harfe duyarlıdır.

value TEnumadlandırılmış sabitine karşılık olmayan bir adsa, yöntemi falsedöndürür. value, TEnum numaralandırmasının temel alınan değerini temsil etmeyen bir tamsayının dize gösterimiyse, yöntemi temel alınan değeri value tamsayı türüne dönüştürülmüş bir numaralandırma üyesi döndürür. Bu davranış istenmeyen bir davranışsa, bir tamsayının belirli bir dize gösteriminin aslında TEnumüyesi olduğundan emin olmak için IsDefined yöntemini çağırın.

Ayrıştırma işlemi başarısız olursa result parametresi, temel alınan TEnum numaralandırmasının üyesi olmayan varsayılan 0 değerini içerir. TEnumiçinde adlandırılmış sabitlere hiçbir değer atanmazsa, varsayılan değer TEnumilk üyesine eşittir. Aksi takdirde varsayılan değer, atanmış değeri 0 olan numaralandırmadaki üyeye eşittir.

Ayrıca bkz.

Şunlara uygulanır

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

Kaynak:
Enum.cs
Kaynak:
Enum.cs
Kaynak:
Enum.cs

Bir veya daha fazla numaralandırılmış sabitin adının veya sayısal değerinin dize gösterimini eşdeğer bir numaralandırılmış nesneye dönüştürür. Parametresi, işlemin büyük/küçük harfe duyarlı olup olmadığını belirtir. Dönüş değeri, dönüştürmenin başarılı olup olmadığını gösterir.

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

Tür Parametreleri

TEnum

result nesnesinin türü.

Parametreler

value
ReadOnlySpan<Char>

Bir veya daha fazla numaralandırılmış sabitin adının veya sayısal değerinin span gösterimi.

ignoreCase
Boolean

Büyük/küçük harf yoksaymak için true; false dikkate alın.

result
TEnum

Bu yöntem truedöndürdüğünde, ayrıştırılan değeri temsil eden bir numaralandırma sabiti içerir.

Döndürülenler

Dönüştürmenin başarılı olup olmadığını true; false.

Özel durumlar

TEnum bir numaralandırma türü değildir.

.NET 8 ve sonraki sürümleri: TEnum Boole destekli bir numaralandırma türüdür.

Şunlara uygulanır