XPathNavigator.CreateAttributes 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.
Geçerli öğede yeni öznitelikler oluşturmak için kullanılan nesneyi XmlWriter döndürür.
public:
virtual System::Xml::XmlWriter ^ CreateAttributes();
public virtual System.Xml.XmlWriter CreateAttributes ();
abstract member CreateAttributes : unit -> System.Xml.XmlWriter
override this.CreateAttributes : unit -> System.Xml.XmlWriter
Public Overridable Function CreateAttributes () As XmlWriter
Döndürülenler
XmlWriter Geçerli öğede yeni öznitelikler oluşturmak için kullanılan nesne.
Özel durumlar
XPathNavigator bir öğe düğümünde konumlandırılmaz.
düzenlemeyi XPathNavigator desteklemez.
Örnekler
Aşağıdaki örnekte, new discount
ve currency
öznitelikleri, yönteminden CreateAttributes döndürülen nesnesi kullanılarak XmlWriter dosyadaki contosoBooks.xml
ilk book
öğenin alt öğesinde oluşturulurprice
.
XmlDocument^ document = gcnew XmlDocument();
document->Load("contosoBooks.xml");
XPathNavigator^ navigator = document->CreateNavigator();
navigator->MoveToChild("bookstore", "http://www.contoso.com/books");
navigator->MoveToChild("book", "http://www.contoso.com/books");
navigator->MoveToChild("price", "http://www.contoso.com/books");
XmlWriter^ attributes = navigator->CreateAttributes();
attributes->WriteAttributeString("discount", "1.00");
attributes->WriteAttributeString("currency", "USD");
attributes->Close();
navigator->MoveToParent();
Console::WriteLine(navigator->OuterXml);
XmlDocument document = new XmlDocument();
document.Load("contosoBooks.xml");
XPathNavigator navigator = document.CreateNavigator();
navigator.MoveToChild("bookstore", "http://www.contoso.com/books");
navigator.MoveToChild("book", "http://www.contoso.com/books");
navigator.MoveToChild("price", "http://www.contoso.com/books");
XmlWriter attributes = navigator.CreateAttributes();
attributes.WriteAttributeString("discount", "1.00");
attributes.WriteAttributeString("currency", "USD");
attributes.Close();
navigator.MoveToParent();
Console.WriteLine(navigator.OuterXml);
Dim document As XmlDocument = New XmlDocument()
document.Load("contosoBooks.xml")
Dim navigator As XPathNavigator = document.CreateNavigator()
navigator.MoveToChild("bookstore", "http://www.contoso.com/books")
navigator.MoveToChild("book", "http://www.contoso.com/books")
navigator.MoveToChild("price", "http://www.contoso.com/books")
Dim attributes As XmlWriter = navigator.CreateAttributes()
attributes.WriteAttributeString("discount", "1.00")
attributes.WriteAttributeString("currency", "USD")
attributes.Close()
navigator.MoveToParent()
Console.WriteLine(navigator.OuterXml)
Örnek, dosyayı giriş olarak alır contosoBooks.xml
.
<?xml version="1.0" encoding="utf-8" ?>
<bookstore xmlns="http://www.contoso.com/books">
<book genre="autobiography" publicationdate="1981-03-22" ISBN="1-861003-11-0">
<title>The Autobiography of Benjamin Franklin</title>
<author>
<first-name>Benjamin</first-name>
<last-name>Franklin</last-name>
</author>
<price>8.99</price>
</book>
<book genre="novel" publicationdate="1967-11-17" ISBN="0-201-63361-2">
<title>The Confidence Man</title>
<author>
<first-name>Herman</first-name>
<last-name>Melville</last-name>
</author>
<price>11.99</price>
</book>
<book genre="philosophy" publicationdate="1991-02-15" ISBN="1-861001-57-6">
<title>The Gorgias</title>
<author>
<name>Plato</name>
</author>
<price>9.99</price>
</book>
</bookstore>
Açıklamalar
Yöntemi kullanılırken CreateAttributes dikkate alınması gereken önemli notlar aşağıdadır.
XPathNavigator öğesinde konumlandırıldığında, yöntemi tarafından XPathNavigator oluşturulan yeni öznitelikler geçerli öğenin öznitelik listesinin sonuna yerleştirilir.
Yeni öznitelikler, nesnesinin yöntemi çağrılana CloseXmlWriter kadar eklenmez.
Belirtilen ad alanı ön eki veya
null
iseString.Empty, yeni özniteliğin ad alanı URI'sinin ön eki kapsam içindeki geçerli ad alanından alınır. Geçerli kapsamda belirtilen ad alanı URI'sine atanmış bir ad alanı ön eki yoksa, otomatik olarak bir ad alanı ön eki oluşturulur. Örneğin, dosyanın varsayılan ad alanındacontosoBooks.xml
bir öğe üzerinde yeni bir öznitelik oluşturmak için, ()xmlns="http://www.contoso.com/books"
hem ad alanı ön eki hem de ad alanı URI parametreleri için veya String.Empty belirtirsiniznull
. Ad alanı URI parametresi olarak belirtilmesihttp://www.contoso.com/books
, yönteminin CreateAttribute yeni öznitelik için bir ad alanı ön eki oluşturmasına neden olur.Oluşturulan yeni öznitelik, seçilen ad alanı ön eki aynı kapsamdaki başka bir ad alanı bildirimi tarafından kullanıldığından veya seçilen ön ek öğeninkiyle aynı olduğundan ancak farklı bir ad alanı URI'sine bağlı olduğundan öğedeki bir ad alanı bildirimiyle çakişen bir ad alanı düğümüyse, bir özel durum oluşturulur.
Döndürülen XmlWriter nesne yalnızca öznitelik oluşturmak için kullanılabilir. Öznitelik oluşturmayan diğer XmlWriter nesne yöntemlerini çağırmak bir özel durum oluşturur.
CreateAttributes yöntemi, konumunu XPathNavigatoretkilemez.