XmlAnyElementAttributes Sınıf
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.
Nesne koleksiyonunu XmlAnyElementAttribute temsil eder.
public ref class XmlAnyElementAttributes : System::Collections::IList
public ref class XmlAnyElementAttributes : System::Collections::CollectionBase
public class XmlAnyElementAttributes : System.Collections.IList
public class XmlAnyElementAttributes : System.Collections.CollectionBase
type XmlAnyElementAttributes = class
interface ICollection
interface IEnumerable
interface IList
type XmlAnyElementAttributes = class
inherit CollectionBase
Public Class XmlAnyElementAttributes
Implements IList
Public Class XmlAnyElementAttributes
Inherits CollectionBase
- Devralma
-
XmlAnyElementAttributes
- Devralma
- Uygulamalar
Örnekler
Aşağıdaki örnek yeni XmlAnyElementAttribute bir oluşturur ve özelliği aracılığıyla erişilen nesne koleksiyonuna XmlAnyElements ekler. daha XmlAttributes sonra öğesini oluşturmak için kullanılan öğesine XmlSerializereklenirXmlAttributeOverrides.
XmlSerializer, bir nesneyi seri hale getirmek veya seri durumdan çıkartmak için kullanılır. özelliğini kullanmanın etkisini görmek için yönteminde XmlAnyElementAttributes yöntemini Main
çalıştırarak SerializeObject
UnknownElements.xml adlı bir XML belgesi oluşturun. Sonuçta elde edilen belgeyi diğer (bilinmeyen) öğeleri içerecek şekilde düzenleyin. yöntemindeki çağrıyı SerializeObject
Main
açıklama satırı yapma ve bilinmeyen herhangi bir XML öğesinin adını ve değerini yazdıran yöntemi çağrısının DeserializeObject
açıklamasını kaldırın.
#using <System.dll>
#using <System.xml.dll>
using namespace System;
using namespace System::IO;
using namespace System::Xml::Serialization;
using namespace System::Xml;
public ref class Group
{
public:
String^ GroupName;
[XmlAnyElement]
array<Object^>^Things;
};
void SerializeObject( String^ filename );
void DeserializeObject( String^ filename );
XmlSerializer^ CreateOverrideSerializer();
int main()
{
// 1 Run this and create the XML document.
// 2 Add new elements to the XML document.
// 3 Comment out the next line, and uncomment
// the DeserializeObject line to deserialize the
// XML document and see unknown elements.
SerializeObject( "UnknownElements.xml" );
// DeserializeObject(S"UnknownElements.xml");
}
void SerializeObject( String^ filename )
{
XmlSerializer^ ser = gcnew XmlSerializer( Group::typeid );
TextWriter^ writer = gcnew StreamWriter( filename );
Group^ g = gcnew Group;
g->GroupName = "MyGroup";
ser->Serialize( writer, g );
writer->Close();
}
void DeserializeObject( String^ filename )
{
XmlSerializer^ ser = CreateOverrideSerializer();
// A FileStream is needed to read the XML document.
FileStream^ fs = gcnew FileStream( filename,FileMode::Open );
Group^ g = safe_cast<Group^>(ser->Deserialize( fs ));
fs->Close();
Console::WriteLine( g->GroupName );
Console::WriteLine( g->Things->Length );
for ( int i = 0; i < g->Things->Length; ++i )
{
XmlElement^ xelement = safe_cast<XmlElement^>(g->Things[ i ]);
Console::WriteLine( "{0}: {1}", xelement->Name, xelement->InnerXml );
}
}
XmlSerializer^ CreateOverrideSerializer()
{
XmlAnyElementAttribute^ myAnyElement = gcnew XmlAnyElementAttribute;
XmlAttributeOverrides^ xOverride = gcnew XmlAttributeOverrides;
XmlAttributes^ xAtts = gcnew XmlAttributes;
xAtts->XmlAnyElements->Add( myAnyElement );
xOverride->Add( Group::typeid, "Things", xAtts );
return gcnew XmlSerializer( Group::typeid,xOverride );
}
using System;
using System.IO;
using System.Xml.Serialization;
using System.Xml;
public class Group{
public string GroupName;
[XmlAnyElement]
public object[]Things;
}
public class Test{
static void Main(){
Test t = new Test();
// 1 Run this and create the XML document.
// 2 Add new elements to the XML document.
// 3 Comment out the new line, and uncomment
// the DeserializeObject line to deserialize the
// XML document and see unknown elements.
t.SerializeObject("UnknownElements.xml");
// t.DeserializeObject("UnknownElements.xml");
}
private void SerializeObject(string filename){
XmlSerializer ser = new XmlSerializer(typeof (Group));
TextWriter writer = new StreamWriter(filename);
Group g = new Group();
g.GroupName = "MyGroup";
ser.Serialize(writer, g);
writer.Close();
}
private void DeserializeObject(string filename){
XmlSerializer ser = CreateOverrideSerializer();
// A FileStream is needed to read the XML document.
FileStream fs = new FileStream(filename, FileMode.Open);
Group g = (Group)
ser.Deserialize(fs);
fs.Close();
Console.WriteLine(g.GroupName);
Console.WriteLine(g.Things.Length);
foreach(XmlElement xelement in g.Things){
Console.WriteLine(xelement.Name + ": " + xelement.InnerXml);
}
}
private XmlSerializer CreateOverrideSerializer(){
XmlAnyElementAttribute myAnyElement =
new XmlAnyElementAttribute();
XmlAttributeOverrides xOverride =
new XmlAttributeOverrides();
XmlAttributes xAtts = new XmlAttributes();
xAtts.XmlAnyElements.Add(myAnyElement);
xOverride.Add(typeof(Group), "Things", xAtts);
return new XmlSerializer(typeof(Group) , xOverride);
}
}
Imports System.IO
Imports System.Xml.Serialization
Imports System.Xml
Public Class Group
Public GroupName As String
<XmlAnyElement> _
Public Things () As object
End Class
Public Class Test
Shared Sub Main()
Dim t As Test = New Test()
' 1 Run this and create the XML document.
' 2 Add New elements to the XML document.
' 3 Comment out the New line, and uncomment
' the DeserializeObject line to deserialize the
' XML document and see unknown elements.
t.SerializeObject("UnknownElements.xml")
't.DeserializeObject("UnknownElements.xml")
End Sub
Private Sub SerializeObject(filename As String)
Dim ser As XmlSerializer = New XmlSerializer(GetType (Group))
Dim writer As TextWriter = New StreamWriter(filename)
Dim g As Group = New Group()
g.GroupName = "MyGroup"
ser.Serialize(writer, g)
writer.Close()
End Sub
Private Sub DeserializeObject(filename As String)
Dim ser As XmlSerializer = CreateOverrideSerializer()
' A FileStream is needed to read the XML document.
Dim fs As FileStream = New FileStream(filename, FileMode.Open)
Dim g As Group = CType( _
ser.Deserialize(fs), Group)
fs.Close()
Console.WriteLine(g.GroupName)
Console.WriteLine(g.Things.Length)
Dim xelement As XmlELement
for each xelement in g.Things
Console.WriteLine(xelement.Name &": " & xelement.InnerXml)
next
End Sub
Private Function CreateOverrideSerializer() As XmlSerializer
Dim myAnyElement As XmlAnyElementAttribute = _
New XmlAnyElementAttribute()
Dim xOverride As XmlAttributeOverrides = _
New XmlAttributeOverrides()
Dim xAtts As XmlAttributes = New XmlAttributes()
xAtts.XmlAnyElements.Add(myAnyElement)
xOverride.Add(GetType(Group), "Things", xAtts)
return New XmlSerializer(GetType(Group) , xOverride)
End Function
End Class
Açıklamalar
XmlAnyElementAttributes Bir nesne kümesinin XmlAnyElementAttribute davranışını geçersiz kılmak için kullanın. Her örnek ayrı Name bir özellik değerine sahip olduğu sürece sınıfın XmlAnyElementAttribute birden çok örneği bir sınıf üyesine uygulanabilir; bu, adlandırılmış öğenin altındaki bilinmeyen öğeleri uygun dizide toplamasını bildirirXmlSerializer. Bu nedenle sınıfının birden çok örneği XmlAnyElementAttribute öğesine XmlAnyElementAttributeseklenebilir.
Bir nesne kümesini XmlAnyElementAttribute geçersiz kılmak için:
oluşturun XmlAnyElementAttributes.
Nesne kümesini XmlAnyElementAttribute oluşturun ve yöntemini kullanarak her nesneyi koleksiyona Add ekleyin.
oluşturun XmlAttributes.
XmlAnyElements özelliğini olarak XmlAnyElementAttributesayarlayın.
oluşturun XmlAttributeOverrides.
XmlAttributes yöntemini kullanarak Add öğesine XmlAttributeOverrides ekleyin.
kullanarak öğesinin XmlSerializer bir örneğini XmlAttributeOverridesoluşturun.
Nesne kümesini içeren bir nesneyi seri hale getirme veya seri durumdan XmlAnyElementAttribute çıkarma.
Oluşturucular
XmlAnyElementAttributes() |
XmlAnyElementAttributes sınıfının yeni bir örneğini başlatır. |
Özellikler
Capacity |
öğesinin içerebileceği öğe CollectionBase sayısını alır veya ayarlar. (Devralındığı yer: CollectionBase) |
Count |
ICollection içindeki öğe sayısını alır. |
Count |
Örnekte bulunan CollectionBase öğelerin sayısını alır. Bu özellik geçersiz kılınamaz. (Devralındığı yer: CollectionBase) |
InnerList |
Örnekteki öğelerin CollectionBase listesini içeren bir ArrayList alır. (Devralındığı yer: CollectionBase) |
Item[Int32] |
Belirtilen dizinde öğesini XmlAnyElementAttribute alır veya ayarlar. |
List |
Örnekteki öğelerin CollectionBase listesini içeren bir IList alır. (Devralındığı yer: CollectionBase) |
Yöntemler
Add(XmlAnyElementAttribute) |
Koleksiyona bir XmlAnyElementAttribute ekler. |
Clear() |
öğesinden IListtüm öğeleri kaldırır. |
Clear() |
Örnekteki CollectionBase tüm nesneleri kaldırır. Bu yöntem geçersiz kılınamaz. (Devralındığı yer: CollectionBase) |
Contains(XmlAnyElementAttribute) |
Belirtilen XmlAnyElementAttribute değerin koleksiyonda var olup olmadığını belirten bir değer alır. |
CopyTo(XmlAnyElementAttribute[], Int32) |
Koleksiyonun tamamını, hedef dizinin XmlElementAttribute belirtilen dizininden başlayarak uyumlu bir tek boyutlu nesne dizisine kopyalar. |
Equals(Object) |
Belirtilen nesnenin geçerli nesneye eşit olup olmadığını belirler. (Devralındığı yer: Object) |
GetEnumerator() |
Bir toplulukta tekrarlanan bir numaralandırıcı döndürür. |
GetEnumerator() |
Örnekte yineleyen CollectionBase bir numaralandırıcı döndürür. (Devralındığı yer: CollectionBase) |
GetHashCode() |
Varsayılan karma işlevi işlevi görür. (Devralındığı yer: Object) |
GetType() |
Type Geçerli örneğini alır. (Devralındığı yer: Object) |
IndexOf(XmlAnyElementAttribute) |
Belirtilen XmlAnyElementAttributeöğesinin dizinini alır. |
Insert(Int32, XmlAnyElementAttribute) |
Belirtilen dizinde koleksiyona bir XmlAnyElementAttribute ekler. |
MemberwiseClone() |
Geçerli Objectöğesinin sığ bir kopyasını oluşturur. (Devralındığı yer: Object) |
OnClear() |
Örneğin içeriğini CollectionBase temizlerken ek özel işlemler gerçekleştirir. (Devralındığı yer: CollectionBase) |
OnClearComplete() |
Örneğin içeriğini CollectionBase temizledikten sonra ek özel işlemler gerçekleştirir. (Devralındığı yer: CollectionBase) |
OnInsert(Int32, Object) |
Örneğe yeni bir öğe CollectionBase eklemeden önce ek özel işlemler gerçekleştirir. (Devralındığı yer: CollectionBase) |
OnInsertComplete(Int32, Object) |
Örneğe yeni bir öğe CollectionBase ekledikten sonra ek özel işlemler gerçekleştirir. (Devralındığı yer: CollectionBase) |
OnRemove(Int32, Object) |
Bir öğeyi örnekten CollectionBase kaldırırken ek özel işlemler gerçekleştirir. (Devralındığı yer: CollectionBase) |
OnRemoveComplete(Int32, Object) |
Bir öğeyi örnekten CollectionBase kaldırdıktan sonra ek özel işlemler gerçekleştirir. (Devralındığı yer: CollectionBase) |
OnSet(Int32, Object, Object) |
Örnekte bir değer CollectionBase ayarlamadan önce ek özel işlemler gerçekleştirir. (Devralındığı yer: CollectionBase) |
OnSetComplete(Int32, Object, Object) |
Örnekte bir değer CollectionBase ayarladıktan sonra ek özel işlemler gerçekleştirir. (Devralındığı yer: CollectionBase) |
OnValidate(Object) |
Bir değeri doğrularken ek özel işlemler gerçekleştirir. (Devralındığı yer: CollectionBase) |
Remove(XmlAnyElementAttribute) |
Belirtilen XmlAnyElementAttribute öğesini koleksiyondan kaldırır. |
RemoveAt(Int32) |
Belirtilen dizindeki IList öğeyi kaldırır. |
RemoveAt(Int32) |
Örneğin belirtilen dizinindeki CollectionBase öğesini kaldırır. Bu yöntem geçersiz kılınamaz. (Devralındığı yer: CollectionBase) |
ToString() |
Geçerli nesneyi temsil eden dizeyi döndürür. (Devralındığı yer: Object) |
Belirtik Arabirim Kullanımları
ICollection.CopyTo(Array, Int32) |
öğesinin ICollection öğelerini belirli bir dizinden başlayarak bir diziye kopyalar. |
ICollection.CopyTo(Array, Int32) |
Hedef dizinin belirtilen dizininden başlayarak tamamını CollectionBase uyumlu bir tek boyutlu Arrayöğesine kopyalar. (Devralındığı yer: CollectionBase) |
ICollection.IsSynchronized |
erişimin ICollection eşitlenip eşitlenmediğini belirten bir değer alır (iş parçacığı güvenli). |
ICollection.IsSynchronized |
erişimin CollectionBase eşitlenip eşitlenmediğini belirten bir değer alır (iş parçacığı güvenli). (Devralındığı yer: CollectionBase) |
ICollection.SyncRoot |
erişimi ICollectioneşitlemek için kullanılabilecek bir nesnesi alır. |
ICollection.SyncRoot |
erişimi CollectionBaseeşitlemek için kullanılabilecek bir nesnesi alır. (Devralındığı yer: CollectionBase) |
IList.Add(Object) |
öğesine bir öğe IListekler. |
IList.Add(Object) |
sonuna bir nesnesi CollectionBaseekler. (Devralındığı yer: CollectionBase) |
IList.Contains(Object) |
öğesinin IList belirli bir değer içerip içermediğini belirler. |
IList.Contains(Object) |
öğesinin CollectionBase belirli bir öğeyi içerip içermediğini belirler. (Devralındığı yer: CollectionBase) |
IList.IndexOf(Object) |
içindeki belirli bir öğenin dizinini IListbelirler. |
IList.IndexOf(Object) |
Belirtilen Object öğesini arar ve tüm CollectionBaseiçindeki ilk oluşumun sıfır tabanlı dizinini döndürür. (Devralındığı yer: CollectionBase) |
IList.Insert(Int32, Object) |
Belirtilen dizinde öğesine IList bir öğe ekler. |
IList.Insert(Int32, Object) |
Belirtilen dizinde öğesine CollectionBase bir öğe ekler. (Devralındığı yer: CollectionBase) |
IList.IsFixedSize |
değerinin sabit bir boyuta sahip olup olmadığını IList belirten bir değer alır. |
IList.IsFixedSize |
değerinin sabit bir boyuta sahip olup olmadığını CollectionBase belirten bir değer alır. (Devralındığı yer: CollectionBase) |
IList.IsReadOnly |
IList öğesinin salt okunur olup olmadığını belirten bir değer alır. |
IList.IsReadOnly |
CollectionBase öğesinin salt okunur olup olmadığını belirten bir değer alır. (Devralındığı yer: CollectionBase) |
IList.Item[Int32] |
Belirtilen dizindeki öğeyi alır veya ayarlar. |
IList.Item[Int32] |
Belirtilen dizindeki öğeyi alır veya ayarlar. (Devralındığı yer: CollectionBase) |
IList.Remove(Object) |
belirli bir nesnenin ilk oluşumunu öğesinden IListkaldırır. |
IList.Remove(Object) |
belirli bir nesnenin ilk oluşumunu öğesinden CollectionBasekaldırır. (Devralındığı yer: CollectionBase) |
Uzantı Metotları
Cast<TResult>(IEnumerable) |
öğesinin IEnumerable öğelerini belirtilen türe atar. |
OfType<TResult>(IEnumerable) |
Öğesinin IEnumerable öğelerini belirtilen türe göre filtreler. |
AsParallel(IEnumerable) |
Sorgunun paralelleştirilmesini etkinleştirir. |
AsQueryable(IEnumerable) |
bir IEnumerable öğesini öğesine IQueryabledönüştürür. |