XAttribute.Remove メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
この属性を親要素から削除します。
public:
void Remove();
public void Remove();
member this.Remove : unit -> unit
Public Sub Remove ()
例外
親要素は null。
例
次の例では、3 つの属性を持つ要素を作成します。 その後、属性の 1 つを削除します。
XElement root = new XElement("Root",
new XAttribute("Att1", "content1"),
new XAttribute("Att2", "content2"),
new XAttribute("Att3", "content3")
);
XAttribute att = root.Attribute("Att2");
att.Remove();
Console.WriteLine(root);
Dim root As XElement = <Root Att1="content1" Att2="content2" Att3="content3"/>
Dim att As XAttribute = root.Attribute("Att2")
att.Remove()
Console.WriteLine(root)
この例を実行すると、次の出力が生成されます。
<Root Att1="content1" Att3="content3" />
注釈
このメソッドを使用して、XML ツリーを変更できます。 このメソッドを使用すると、イベントが発生します。
属性のセットを削除するシナリオは多数あります。 LINQ to XML プログラミングでは、そのセット内のノードに対してクエリを実行している間は、一連のノードを操作または変更しないでください。 実際には、これは一連の属性を反復処理して削除しないことを意味します。 代わりに、List<T>拡張メソッドを使用して、それらをToListに具体化する必要があります。 その後、リストを反復処理して属性を削除できます。 詳細については、「 混合宣言型コード/命令型コードのバグ (LINQ to XML)」を参照してください。
または、一連の属性を削除する場合は、 Extensions.Remove メソッドを使用することをお勧めします。 このメソッドは、属性をリストにコピーした後、リストを反復処理して属性を削除します。