Uwaga
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Zawiera znane typy używane DataContractSerializer podczas deserializacji.
Aby uzyskać więcej informacji na temat kontraktów danych i znanych typów, zobacz Znane typy kontraktów danych.
<Konfiguracji>
<System.runtime.serialization>
<Datacontractserializer>
<declaredTypes>
Składnia
<configuration>
<system.runtime.serialization>
<dataContractSerializer>
<declaredTypes>
<add type="String ">
<knownType type="String">
<parameter index="Integer"/>
</knownType>
</add>
</declaredTypes>
</dataContractSerializer>
</system.runtime.serialization>
</configuration>
Atrybuty i elementy
W poniższych sekcjach opisano atrybuty, elementy podrzędne i elementy nadrzędne.
Atrybuty
Brak.
Elementy podrzędne
Element | Opis |
---|---|
<Dodaj> | Dodaje typy, które wymagają znanych typów. |
Elementy nadrzędne
Element | Opis |
---|---|
<Datacontractserializer> | Zawiera dane konfiguracji dla elementu DataContractSerializer. |
Uwagi
Aby uzyskać więcej informacji na temat znanych typów, zobacz Znane typy kontraktów danych i DataContractSerializer.
Przykład
Poniższy kod XML przedstawia zadeklarowane typy i znane typy dodane do DataContractSerializer
elementu. W przykładzie pokazano trzy dodawane typy. Pierwszy to typ niestandardowy o nazwie "Orders", który używa znanego typu o nazwie "Item". Drugi zadeklarowany typ jest List<T> używany Item
jako znany typ. Na koniec trzeci zadeklarowany typ to Dictionary<TKey,TValue>. Typ Dictionary<TKey,TValue> klasy jest typem ogólnym z dwoma parametrami typu. Pierwszy reprezentuje klucz, a drugi reprezentuje wartość. Poniższy przykład dodaje drugi List<T> typ (wartość) do listy znanych typów. Należy użyć atrybutu index
, aby określić, który parametr typu ma być używany w znanym typie. W takim przypadku typ wartości jest wskazywany przez atrybut indeksu ustawiony na wartość "1" (kolekcja jest oparta na zera).
<configuration>
<system.runtime.serialization>
<dataContractSerializer>
<declaredTypes>
<add type="Examples.Types.Orders, SerializationTypes, Version = 2.0.0.0, Culture = neutral, PublicKeyToken=null">
<knownType type="Examples.Types.Item, SerializationTypes, Version=2.0.0.0, Culture=neutral, PublicKey=null" />
</add>
<add type="System.Collections.Generic.List`1, SerializationTypes, Version = 2.0.0.0, Culture = neutral, PublicKeyToken=null">
<knownType type="Examples.Types.Item, SerializationTypes, Version=2.0.0.0, Culture=neutral, PublicKey=null" />
</add>
<add type="System.Collections.Generic.Dictionary`2, SerializationTypes, Version = 2.0.0.0, Culture = neutral, PublicKeyToken=null">
<knownType type="System.Collections.Generic.List`1, SerializationTypes, Version = 2.0.0.0, Culture = neutral, PublicKeyToken=null">
<parameter index="1"/>
</knownType>
</add>
</declaredTypes>
</dataContractSerializer>
</system.runtime.serialization>
</configuration>