Conversion.CTypeDynamic Metode
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Overload
| Nama | Deskripsi |
|---|---|
| CTypeDynamic(Object, Type) |
Mengonversi objek ke tipe yang ditentukan. |
| CTypeDynamic<TargetType>(Object) |
Mengonversi objek ke jenis generik yang ditentukan. |
CTypeDynamic(Object, Type)
- Sumber:
- Conversion.vb
- Sumber:
- Conversion.vb
- Sumber:
- Conversion.vb
- Sumber:
- Conversion.vb
- Sumber:
- Conversion.vb
Mengonversi objek ke tipe yang ditentukan.
public:
static System::Object ^ CTypeDynamic(System::Object ^ Expression, Type ^ TargetType);
[System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("The Expression's underlying type cannot be statically analyzed and its members may be trimmed")]
public static object CTypeDynamic(object? Expression, Type TargetType);
public static object CTypeDynamic(object? Expression, Type TargetType);
public static object CTypeDynamic(object Expression, Type TargetType);
[<System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("The Expression's underlying type cannot be statically analyzed and its members may be trimmed")>]
static member CTypeDynamic : obj * Type -> obj
static member CTypeDynamic : obj * Type -> obj
Public Function CTypeDynamic (Expression As Object, TargetType As Type) As Object
Parameter
- Expression
- Object
Objek yang akan dikonversi.
- TargetType
- Type
Jenis untuk mengonversi objek.
Mengembalikan
Objek yang jenisnya pada waktu proses adalah jenis target yang diminta.
- Atribut
Contoh
Contoh berikut menggunakan CTypeDynamic metode untuk mengonversi objek dinamis menjadi string dengan menggunakan konversi yang ditentukan oleh objek dinamis.
Imports System.Dynamic
Module Module1
Sub Main()
Dim dyn As Object = New SampleDynamicObject
Dim sampleString = CTypeDynamic(dyn, GetType(String))
Console.WriteLine(sampleString)
End Sub
End Module
Class SampleDynamicObject
Inherits DynamicObject
Public Overrides Function TryConvert(ByVal binder As ConvertBinder,
ByRef result As Object) As Boolean
If binder.Type = GetType(String) Then
result = "Sample String"
Return True
End If
Return False
End Function
End Class
Keterangan
Metode mengonversi CTypeDynamic objek yang diteruskan sebagai Expression parameter ke jenis yang ditentukan oleh TargetType parameter . Jika objek adalah objek dinamis, metode menerapkan CTypeDynamic konversi dinamis yang tersedia.
Metode ini CTypeDynamic menerapkan konversi dinamis sesuai dengan semantik konversi yang ditentukan oleh objek itu sendiri. Jika objek dinamis mewarisi dari DynamicObject, CTypeDynamic metode pertama-tama mencoba melakukan konversi dengan menggunakan konversi statis yang ditentukan pengguna. Jika konversi statis yang ditentukan pengguna gagal, CTypeDynamic metode mencoba melakukan konversi dengan menggunakan konversi dinamis. Jika objek dinamis mengimplementasikan IDynamicMetaObjectProvider, CTypeDynamic metode ini lebih diutamakan untuk konversi dinamis daripada konversi statis yang ditentukan pengguna.
Lihat juga
- TryConvert(ConvertBinder, Object)
- BindConvert(ConvertBinder)
- CTypeDynamic<TargetType>(Object)
- Working dengan Dynamic Objects (Visual Basic)
- Walkthrough: Membuat dan Menggunakan Objek Dinamis (C# dan Visual Basic)
Berlaku untuk
CTypeDynamic<TargetType>(Object)
- Sumber:
- Conversion.vb
- Sumber:
- Conversion.vb
- Sumber:
- Conversion.vb
- Sumber:
- Conversion.vb
- Sumber:
- Conversion.vb
Mengonversi objek ke jenis generik yang ditentukan.
public:
generic <typename TargetType>
static TargetType CTypeDynamic(System::Object ^ Expression);
[System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("The Expression's underlying type cannot be statically analyzed and its members may be trimmed")]
public static TargetType CTypeDynamic<TargetType>(object? Expression);
public static TargetType CTypeDynamic<TargetType>(object? Expression);
public static TargetType CTypeDynamic<TargetType>(object Expression);
[<System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("The Expression's underlying type cannot be statically analyzed and its members may be trimmed")>]
static member CTypeDynamic : obj -> 'argetType
static member CTypeDynamic : obj -> 'argetType
Public Function CTypeDynamic(Of TargetType) (Expression As Object) As TargetType
Jenis parameter
- TargetType
Jenis untuk mengonversi objek.
Parameter
- Expression
- Object
Objek yang akan dikonversi.
Mengembalikan
Objek secara statis ditik sebagai jenis generik yang diminta.
- Atribut
Contoh
Contoh berikut menggunakan CTypeDynamic metode untuk mengonversi objek dinamis menjadi string dengan menggunakan konversi yang ditentukan oleh objek dinamis.
Imports System.Dynamic
Module Module1
Sub Main()
Dim dyn As Object = New SampleDynamicObject
Dim str = CTypeDynamic(Of String)(dyn)
Console.WriteLine(str)
End Sub
End Module
Class SampleDynamicObject
Inherits DynamicObject
Public Overrides Function TryConvert(ByVal binder As ConvertBinder,
ByRef result As Object) As Boolean
If binder.Type = GetType(String) Then
result = "Sample String"
Return True
End If
Return False
End Function
End Class
Keterangan
Metode mengonversi CTypeDynamic objek yang diteruskan sebagai Expression parameter ke jenis yang ditentukan oleh jenis parameter generik. Jika objek adalah objek dinamis, metode menerapkan CTypeDynamic konversi dinamis yang tersedia.
Metode ini CTypeDynamic menerapkan konversi dinamis sesuai dengan semantik konversi yang ditentukan oleh objek itu sendiri. Jika objek dinamis mewarisi dari DynamicObject, CTypeDynamic metode pertama-tama mencoba melakukan konversi dengan menggunakan konversi statis yang ditentukan pengguna. Jika konversi statis yang ditentukan pengguna gagal, CTypeDynamic metode mencoba melakukan konversi dengan menggunakan konversi dinamis. Jika objek dinamis mengimplementasikan IDynamicMetaObjectProvider, CTypeDynamic metode ini lebih diutamakan untuk konversi dinamis daripada konversi statis yang ditentukan pengguna.
Lihat juga
- TryConvert(ConvertBinder, Object)
- BindConvert(ConvertBinder)
- CTypeDynamic(Object, Type)
- Working dengan Dynamic Objects (Visual Basic)
- Walkthrough: Membuat dan Menggunakan Objek Dinamis (C# dan Visual Basic)