TypeCodeDomSerializer.Deserialize Metoda
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Deserializuje daną deklarację typu.
public:
virtual System::Object ^ Deserialize(System::ComponentModel::Design::Serialization::IDesignerSerializationManager ^ manager, System::CodeDom::CodeTypeDeclaration ^ declaration);
public virtual object Deserialize (System.ComponentModel.Design.Serialization.IDesignerSerializationManager manager, System.CodeDom.CodeTypeDeclaration declaration);
abstract member Deserialize : System.ComponentModel.Design.Serialization.IDesignerSerializationManager * System.CodeDom.CodeTypeDeclaration -> obj
override this.Deserialize : System.ComponentModel.Design.Serialization.IDesignerSerializationManager * System.CodeDom.CodeTypeDeclaration -> obj
Public Overridable Function Deserialize (manager As IDesignerSerializationManager, declaration As CodeTypeDeclaration) As Object
Parametry
- manager
- IDesignerSerializationManager
Menedżer serializacji do użycia do serializacji.
- declaration
- CodeTypeDeclaration
Deklaracja typu, która ma być używana do serializacji.
Zwraca
Obiekt główny.
Wyjątki
manager
lub typeDecl
ma wartość null
.
Uwagi
Metoda Deserialize deserializuje wcześniej serializowaną deklarację typu kodu. W poniższej tabeli przedstawiono zadania, które wykonuje domyślna implementacja.
Zadanie | Opis |
---|---|
Sprawdzanie poufności spraw | Implementacja wyszukuje usługę CodeDomProvider , aby zdecydować, czy powinna traktować elementy członkowskie jako uwzględniane wielkości liter lub bez uwzględniania wielkości liter. |
Sortowanie instrukcji | Wszystkie zmienne składowe i zmienne lokalne z metod inicjowania są przechowywane w tabeli. Następnie każda instrukcja w metodzie init jest dodawana do kolekcji instrukcji pogrupowanej według lewej strony, więc wszystkie instrukcje przypisywane lub działające na określonej zmiennej są grupowane w ramach tej zmiennej. Zmienne, które nie mają instrukcji, są odrzucane. |
Deserializacji | Kolekcje instrukcji dla każdej zmiennej są deserializowane zgodnie ze zmienną . |
W poniższej tabeli przedstawiono usługi wymagane przez metodę Deserialize .
Usługa | Opis |
---|---|
CodeDomProvider | Chociaż nie jest to absolutnie konieczne, usługa, jeśli jest dostępna, jest używana do określenia, czy serializacja powinna mieć wielkość liter, czy nie uwzględnia wielkości liter. |
IContainer | Jeśli obiekt nie istnieje w tabeli nazw podczas deserializacji, tworzone jest zapytanie dotyczące IContainer . Jeśli to zapytanie powiedzie się, kontener zostanie sprawdzony pod kątem obiektu. Kontener jest również używany jako stand-in dla każdego argumentu kontenera wymaganego przez składniki. |