TypeCodeDomSerializer.Serialize Yöntem
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
Kök tanımlayan yeni bir tür bildirimi oluşturarak nesne kökünü serileştirir.
public:
virtual System::CodeDom::CodeTypeDeclaration ^ Serialize(System::ComponentModel::Design::Serialization::IDesignerSerializationManager ^ manager, System::Object ^ root, System::Collections::ICollection ^ members);
public virtual System.CodeDom.CodeTypeDeclaration Serialize (System.ComponentModel.Design.Serialization.IDesignerSerializationManager manager, object root, System.Collections.ICollection members);
public virtual System.CodeDom.CodeTypeDeclaration Serialize (System.ComponentModel.Design.Serialization.IDesignerSerializationManager manager, object root, System.Collections.ICollection? members);
abstract member Serialize : System.ComponentModel.Design.Serialization.IDesignerSerializationManager * obj * System.Collections.ICollection -> System.CodeDom.CodeTypeDeclaration
override this.Serialize : System.ComponentModel.Design.Serialization.IDesignerSerializationManager * obj * System.Collections.ICollection -> System.CodeDom.CodeTypeDeclaration
Public Overridable Function Serialize (manager As IDesignerSerializationManager, root As Object, members As ICollection) As CodeTypeDeclaration
Parametreler
- manager
- IDesignerSerializationManager
Serileştirme için kullanılacak serileştirme yöneticisi.
- root
- Object
Serileştirecek nesne.
- members
- ICollection
İsteğe bağlı üye koleksiyonu. Boş veya boş olabilir null
.
Döndürülenler
CodeTypeDeclaration Kök nesneyi tanımlayan bir.
Özel durumlar
manager
veya root
şeklindedir null
.
Açıklamalar
yöntemi, Serialize yeni bir tür tanımı oluşturmak için verilen kök nesneyi ve isteğe bağlı üye koleksiyonunu serileştirir. members
Koleksiyon değerler içeriyorsa, bu değerler seri hale getirilir. Değerlerin kendileri üye değişken veya yerel değişken olarak seri hale gelebilir. Bu belirleme, adlı GenerateMember
nesnede bir extender özelliği aranarak yapılır. ise true
, bir üye oluşturulur. Aksi takdirde, yerel bir değişken oluşturulur. Kolaylık sağlamak için, members
koleksiyon kök nesnesini içerebilir. Bu durumda, kök nesne üye veya yerel değişken olarak da eklenmez.
Döndürülen türün adı, adlandırılmış bir nesneyse kök nesnenin adından alınır. Aksi takdirde, kök sınıfın basit tür adından bir ad oluşturulur.
Aşağıdaki tabloda, yönteminin varsayılan uygulaması tarafından gerçekleştirilen görevler gösterilmektedir Serialize .
Görev | Açıklama |
---|---|
Bağlam Dengeli Dağıtma | Serileştirme bağlamı ve dahil olmak üzere RootContext verilerle başlatılır CodeTypeDeclaration |
Üye Serileştirme | Ardından, Serialize tüm üyeleri ve çağrıları SerializeToExpressiongösterir. serileştirme içinde SerializeToExpressionfırsatçı bir şekilde yapıldığından, bu serileştirmenin iki kez yapılmamasını sağlar. |
Kök Serileştirme | Ardından kök nesnesi serileştirilir ve deyimleri deyim koleksiyonuna eklenir. |
Deyim Tümleştirmesi | Tüm nesneler seri hale getirildikten sonra yöntemi deyimlerini Serialize sıralar ve tarafından döndürülen GetInitializeMethodbir yönteme ekler. Son olarak, içinden döndürülen GetInitializeMethodtüm yöntemleri çağıran bir oluşturucu oluşturulur. |
-
Aşağıdaki tabloda, yöntemin bağlam yığınına Serialize yerleştir dediği nesneler gösterilmektedir.
Örnek | Description |
---|---|
TypeCodeDomSerializer | Bu seri hale getirici. Türetilen sınıflar, bu sınıfa genel özellikler eklemeyi yararlı bulabilir. |
CodeTypeDeclaration | Oluşturulan tür. Çoğu nesnenin buna doğrudan erişmesi gerekmez. |
Şunlara uygulanır
Ayrıca bkz.
Geri Bildirim
https://aka.ms/ContentUserFeedback.
Çok yakında: 2024 boyunca, içerik için geri bildirim mekanizması olarak GitHub Sorunları’nı kullanımdan kaldıracak ve yeni bir geri bildirim sistemiyle değiştireceğiz. Daha fazla bilgi için bkz.Gönderin ve geri bildirimi görüntüleyin