Obecný typ převodu
Na.NET Framework poskytuje následující dva mechanismy pro převod do jiných typů dat uživatelem definované datové typy (vlastní typy):
Definování typu převaděč pro vlastní typ rozšířením System.ComponentModel.TypeConverter třídy a typu prostřednictvím přidružení typu převaděč System.ComponentModel.TypeConverterAttribute atributu.
Provádění System.IConvertible na vlastní typ rozhraní.
V následující tabulce zvýrazní rozdíly mezi tyto dva mechanismy.
[!POZNÁMKA]
Podpora návrhu může být poskytnuta pro vlastní typ pouze tehdy, pokud má definován konvertor typu.
Převod pomocí TypeConverter |
Převod pomocí IConvertible |
---|---|
Lze použít jak v návrhu, tak v době běhu. |
Lze použít pouze v době běhu. |
Používá odraz; Proto je pomalejší než povolené převodu rozhraní IConvertible. |
Nepoužívá reflexe. |
Umožňuje obousměrný typ převody z vlastní typ na jiné datové typy a z jiných datových typů na typ vlastní.Například TypeConverter definované MyType umožňuje převody z MyType na řetězec a z řetězec na MyType. |
Umožňuje převod z vlastní typ na jiné datové typy, nikoli však z jiných datových typů na typ vlastní. |
![]()
A TypeConverter pro typ je prováděna mimo typ a použitím přidruženou k typu TypeConverterAttribute atributu.
|
![]()
Rozhraní IConvertible je implementováno pomocí vlastního typu.Chcete-li převést typ uživatele typu vyvolá metoda převodu (z rozhraní IConvertible smlouvy) na typu.
|
Podrobnosti o provádění převodů pomocí převaděče typu viz System.ComponentModel.TypeConverter.Informace o implementaci typu převaděč poskytovat podporu návrhu vlastní typ implementace typu převaděč.
Viz také
Úkoly
Jak: implementovat typ Converter