XMLファイル(書籍のデータベース)を照会するC#プログラムを作成しています。
定義済みの著者ですべてのレコードを照会したいとします。<の著者>は、<の著者>のリストとして定義されています。
は、これまで私が使用し、以下:定義済みの子を持つレコードを抽出するXPath式
itemNodes = xmlDoc.SelectNodes("//record[contains(translate(authors/author, 'ABCDEFGHIJKLMNOPQRSTUVWXYZ', 'abcdefghijklmnopqrstuvwxyz'), '" + strSearch.ToLower() + "')]");
それは、このレコードでOKです:
<record>
<_formats>PDF</_formats>
<publisher>Alessio Roberti Editore</publisher>
<authors sort="Dilts, Robert">
<author>Robert Dilts</author>
</authors>
...
が、それはこの1ミス:ここ
<record>
<_formats>AZW3, EPUB</_formats>
<publisher>Alessio Roberti Editore</publisher>
<authors sort="Gilligan, Stephen & Dilts, Robert">
<author>Stephen Gilligan</author>
<author>Robert Dilts</author>
</authors>
...
著者が2番目の項目ですリストの
両方のレコードを返すように式を変更するにはどうすればよいですか?
C#を使用しているので、代わりにLinq2Xmlを使用できます。テキスト内の一重引用符の問題を避けるために簡単に使用することができます。 –