public void CustomXmlSchemaCollection() { //ExStart //ExFor:CustomXmlSchemaCollection //ExFor:CustomXmlSchemaCollection.Add(System.String) //ExFor:CustomXmlSchemaCollection.Clear //ExFor:CustomXmlSchemaCollection.Clone //ExFor:CustomXmlSchemaCollection.Count //ExFor:CustomXmlSchemaCollection.GetEnumerator //ExFor:CustomXmlSchemaCollection.IndexOf(System.String) //ExFor:CustomXmlSchemaCollection.Item(System.Int32) //ExFor:CustomXmlSchemaCollection.Remove(System.String) //ExFor:CustomXmlSchemaCollection.RemoveAt(System.Int32) //ExSummary:Shows how to work with an XML schema collection. Document doc = new Document(); string xmlPartId = Guid.NewGuid().ToString("B"); string xmlPartContent = "<root><text>Hello, World!</text></root>"; CustomXmlPart xmlPart = doc.CustomXmlParts.Add(xmlPartId, xmlPartContent); // Add an XML schema association. xmlPart.Schemas.Add("http://www.w3.org/2001/XMLSchema"); // Clone the custom XML part's XML schema association collection, // and then add a couple of new schemas to the clone. CustomXmlSchemaCollection schemas = xmlPart.Schemas.Clone(); schemas.Add("http://www.w3.org/2001/XMLSchema-instance"); schemas.Add("http://schemas.microsoft.com/office/2006/metadata/contentType"); Assert.AreEqual(3, schemas.Count); Assert.AreEqual(2, schemas.IndexOf("http://schemas.microsoft.com/office/2006/metadata/contentType")); // Enumerate the schemas and print each element. using (IEnumerator <string> enumerator = schemas.GetEnumerator()) { while (enumerator.MoveNext()) { Console.WriteLine(enumerator.Current); } } // Below are three ways of removing schemas from the collection. // 1 - Remove a schema by index: schemas.RemoveAt(2); // 2 - Remove a schema by value: schemas.Remove("http://www.w3.org/2001/XMLSchema"); // 3 - Use the "Clear" method to empty the collection at once. schemas.Clear(); Assert.AreEqual(0, schemas.Count); //ExEnd }
public void CustomXmlSchemaCollection() { //ExStart //ExFor:CustomXmlSchemaCollection //ExFor:CustomXmlSchemaCollection.Add(System.String) //ExFor:CustomXmlSchemaCollection.Clear //ExFor:CustomXmlSchemaCollection.Clone //ExFor:CustomXmlSchemaCollection.Count //ExFor:CustomXmlSchemaCollection.GetEnumerator //ExFor:CustomXmlSchemaCollection.IndexOf(System.String) //ExFor:CustomXmlSchemaCollection.Item(System.Int32) //ExFor:CustomXmlSchemaCollection.Remove(System.String) //ExFor:CustomXmlSchemaCollection.RemoveAt(System.Int32) //ExSummary:Shows how to work with an XML schema collection. // Create a document and add a custom XML part Document doc = new Document(); string xmlPartId = Guid.NewGuid().ToString("B"); string xmlPartContent = "<root><text>Hello, World!</text></root>"; CustomXmlPart xmlPart = doc.CustomXmlParts.Add(xmlPartId, xmlPartContent); // Once the part is created, we can add XML schema associations like this, // and perform other collection-related operations on the list of schemas for this part xmlPart.Schemas.Add("http://www.w3.org/2001/XMLSchema"); // Collections can be cloned, and elements can be added CustomXmlSchemaCollection schemas = xmlPart.Schemas.Clone(); schemas.Add("http://www.w3.org/2001/XMLSchema-instance"); schemas.Add("http://schemas.microsoft.com/office/2006/metadata/contentType"); Assert.AreEqual(3, schemas.Count); Assert.AreEqual(2, schemas.IndexOf(("http://schemas.microsoft.com/office/2006/metadata/contentType"))); // We can iterate over the collection with an enumerator using (IEnumerator <string> enumerator = schemas.GetEnumerator()) { while (enumerator.MoveNext()) { Console.WriteLine(enumerator.Current); } } // We can also remove elements by index, element, or we can clear the entire collection schemas.RemoveAt(2); schemas.Remove("http://www.w3.org/2001/XMLSchema"); schemas.Clear(); Assert.AreEqual(0, schemas.Count); //ExEnd }