Class TypeManipulationExtensions
Stellt Typmanipulations-Methoden zur Verfügung, die implizit logisch sind, aber von .NET nicht automatisch erkannt werden.
Inheritance
Inherited Members
Namespace: Dataport.AppFrameDotNet.DotNetTools.Reflection.Extensions
Assembly: Dataport.AppFrameDotNet.DotNetTools.dll
Syntax
public static class TypeManipulationExtensions
Methods
DowngradeKeyType<TKeyCurrent, TKeyNew, TValue>(IDictionary<TKeyCurrent, TValue>)
Definiert den Typ der Schlüsselwerte des Dictionaries als unterliegenden Typ in der Vererbungshierarchie um.
Declaration
public static IDictionary<TKeyNew, TValue> DowngradeKeyType<TKeyCurrent, TKeyNew, TValue>(this IDictionary<TKeyCurrent, TValue> dictionary)
where TKeyCurrent : TKeyNew
Parameters
Type | Name | Description |
---|---|---|
System.Collections.Generic.IDictionary<TKeyCurrent, TValue> | dictionary | Das zu manipulierende Dictionary. |
Returns
Type | Description |
---|---|
System.Collections.Generic.IDictionary<TKeyNew, TValue> | Das umdefinierte Dictionary |
Type Parameters
Name | Description |
---|---|
TKeyCurrent | Der ursprüngliche Typ der Schlüsselwerte |
TKeyNew | Der neue Typ der Schlüsselwerte |
TValue | Der Typ der Werte |
DowngradeType<TCurrent, TNew>(IEnumerable<TCurrent>)
Definiert den Typ der Enumerable als unterliegenden Typ in der Vererbungshierarchie um.
Declaration
public static IEnumerable<TNew> DowngradeType<TCurrent, TNew>(this IEnumerable<TCurrent> enumerable)
where TCurrent : TNew
Parameters
Type | Name | Description |
---|---|---|
System.Collections.Generic.IEnumerable<TCurrent> | enumerable | Die zu manipulierende Enumerable. |
Returns
Type | Description |
---|---|
System.Collections.Generic.IEnumerable<TNew> | Die umdefinierte Enumerable |
Type Parameters
Name | Description |
---|---|
TCurrent | Der ursprüngliche Typ |
TNew | Der neue Typ |
DowngradeValueType<TKey, TValueCurrent, TValueNew>(IDictionary<TKey, TValueCurrent>)
Definiert den Typ der Werte des Dictionaries als unterliegenden Typ in der Vererbungshierarchie um.
Declaration
public static IDictionary<TKey, TValueNew> DowngradeValueType<TKey, TValueCurrent, TValueNew>(this IDictionary<TKey, TValueCurrent> dictionary)
where TValueCurrent : TValueNew
Parameters
Type | Name | Description |
---|---|---|
System.Collections.Generic.IDictionary<TKey, TValueCurrent> | dictionary | Das zu manipulierende Dictionary |
Returns
Type | Description |
---|---|
System.Collections.Generic.IDictionary<TKey, TValueNew> | Das umdefinierte Dictionary |
Type Parameters
Name | Description |
---|---|
TKey | Der Typ der Schlüsselwerte |
TValueCurrent | Der ursprüngliche Typ der Werte |
TValueNew | Der neue Typ der Werte |
UpgradeKeyType<TKeyCurrent, TKeyNew, TValue>(IDictionary<TKeyCurrent, TValue>)
Definiert den Typ der Schlüsselwerte des Dictionaries als oberliegenden Typ in der Vererbungshierarchie um.
Declaration
public static IDictionary<TKeyNew, TValue> UpgradeKeyType<TKeyCurrent, TKeyNew, TValue>(this IDictionary<TKeyCurrent, TValue> dictionary)
where TKeyNew : TKeyCurrent
Parameters
Type | Name | Description |
---|---|---|
System.Collections.Generic.IDictionary<TKeyCurrent, TValue> | dictionary | Das zu manipulierende Dictionary. |
Returns
Type | Description |
---|---|
System.Collections.Generic.IDictionary<TKeyNew, TValue> | Das umdefinierte Dictionary |
Type Parameters
Name | Description |
---|---|
TKeyCurrent | Der ursprüngliche Typ der Schlüsselwerte |
TKeyNew | Der neue Typ der Schlüsselwerte |
TValue | Der Typ der Werte |
Exceptions
Type | Condition |
---|---|
System.InvalidCastException | Das Upgrade war aufgrund von Typinkompatibilität nicht möglich. |
UpgradeType<TCurrent, TNew>(IEnumerable<TCurrent>)
Definiert den Typ der Enumerable als oberliegenden Typ in der Vererbungshierarchie um.
Declaration
public static IEnumerable<TNew> UpgradeType<TCurrent, TNew>(this IEnumerable<TCurrent> enumerable)
where TNew : TCurrent
Parameters
Type | Name | Description |
---|---|---|
System.Collections.Generic.IEnumerable<TCurrent> | enumerable | Die zu manipulierende Enumerable. |
Returns
Type | Description |
---|---|
System.Collections.Generic.IEnumerable<TNew> | Die umdefinierte Enumerable |
Type Parameters
Name | Description |
---|---|
TCurrent | Der ursprüngliche Typ |
TNew | Der neue Typ |
Exceptions
Type | Condition |
---|---|
System.InvalidCastException | Das Upgrade war aufgrund von Typinkompatibilität nicht möglich. |
UpgradeValueType<TKey, TValueCurrent, TValueNew>(IDictionary<TKey, TValueCurrent>)
Definiert den Typ der Werte des Dictionaries als oberliegenden Typ in der Vererbungshierarchie um.
Declaration
public static IDictionary<TKey, TValueNew> UpgradeValueType<TKey, TValueCurrent, TValueNew>(this IDictionary<TKey, TValueCurrent> dictionary)
where TValueNew : TValueCurrent
Parameters
Type | Name | Description |
---|---|---|
System.Collections.Generic.IDictionary<TKey, TValueCurrent> | dictionary | Das zu manipulierende Dictionary |
Returns
Type | Description |
---|---|
System.Collections.Generic.IDictionary<TKey, TValueNew> | Das umdefinierte Dictionary |
Type Parameters
Name | Description |
---|---|
TKey | Der Typ der Schlüsselwerte |
TValueCurrent | Der ursprüngliche Typ der Werte |
TValueNew | Der neue Typ der Werte |
Exceptions
Type | Condition |
---|---|
System.InvalidCastException | Das Upgrade war aufgrund von Typinkompatibilität nicht möglich. |