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
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
Mengonversi objek ke tipe yang ditentukan.
public:
static System::Object ^ CTypeDynamic(System::Object ^ Expression, Type ^ TargetType);
public static object CTypeDynamic (object? Expression, Type TargetType);
public static object CTypeDynamic (object Expression, Type TargetType);
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.
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, CTypeDynamic
metode menerapkan 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 atas konversi statis yang ditentukan pengguna.
Lihat juga
- TryConvert(ConvertBinder, Object)
- BindConvert(ConvertBinder)
- CTypeDynamic<TargetType>(Object)
- Menggunakan Objek Dinamis (Visual Basic)
- Panduan: Membuat dan Menggunakan Objek Dinamis (C# dan Visual Basic)
Berlaku untuk
CTypeDynamic<TargetType>(Object)
- 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);
public static TargetType CTypeDynamic<TargetType> (object? Expression);
public static TargetType CTypeDynamic<TargetType> (object Expression);
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 di ketik sebagai jenis generik yang diminta.
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, CTypeDynamic
metode menerapkan 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 atas konversi statis yang ditentukan pengguna.
Lihat juga
- TryConvert(ConvertBinder, Object)
- BindConvert(ConvertBinder)
- CTypeDynamic(Object, Type)
- Menggunakan Objek Dinamis (Visual Basic)
- Panduan: Membuat dan Menggunakan Objek Dinamis (C# dan Visual Basic)