XPath の文字列比較で、小文字と大文字を区別しない方法

.NET の XML DOM を使って、XPath の文字列比較によって、大文字、小文字を区別することなく、ノードをセレクトする方法を紹介する。 一般的な言語系であれば、文字列比較関数で、大文字、小文字を区別することなく、文字列を一致させるオプションが用意されていることは普通だ。しかし、XPath では、そのような関数のオプションは用意されていないようだ。 translate() 関数を応用することによって実現する。 まず、translate() 関数によって、検索対象ノード値文字列を小文字に変換する。 これは、string クラスの ToLowerString() メソッドに相当する。 translate(@targetAttribute, 'ABCDEFGHIJKLMNOPQRSTUVWXYZ', 'abcdefghijklmnopqrstuvwxyz') あとは、通常の文字列比較によって、式を記述する。 以下は、object ノードより、deleted 属性が、false のノードのみを取得するサンプルコード。deleted 属性文字列は、大文字、小文字... 続きを読む

XmlSerializer によりシリアライズしたオブジェクトを XmlDocument オブジェクトに変換する方法

XmlDocument System.Xml.XmlDocument XmlSerializer System.Xml.Serialization XmlSerializer によりシリアライズしたオブジェクトを XmlDocument オブジェクトに変換する方法 ========================================================= using System.Xml.Serialization; [XmlRoot("branch")] public class Branch { [XmlElement("name")] public string name = null; [XmlElement("title")] public string Title = null; [XmlElement("description")] public string Description = null; [Xm... 続きを読む