バーコードを読み取り、それをバーコードというテキストボックスに入れる別の方法で読み取るバーコードを入れました。そして今MessageboxははstrBarCodeが正しい値を持っていると言うが、それはプログラムに表示されないと sの値がnull であることをカミングアウトされたバーコードにcorespondingデータをロードするボタンを作成したが、問題FirstOrDefaultは引数を取っていません
private void Load_Click(object sender, RoutedEventArgs e)
{
var str = @"<Books xmlns=""""> <book Barcode=""780672318863""><Serial>11</Serial>
<name>abc</name> <detail>Fantasy</detail></book>
<book Barcode=""780672318864""><Serial>12</Serial>
<name>abc</name><detail>Fantasy1</detail></book></Books>";
var strBarcode = barcode.Text;
MessageBox.Show(strBarCode);
XDocument docX = XDocument.Parse(str);
var s = docX.Descendants("book").FirstOrDefault(a => a.Attribute("Barcode").Value == strBarcode);
spnl.DataContext = s;
}
が直面しています私は直接 "780672318863" strBarcodeの代わりにそれを置く場合は、他の手を正しく値を表示しています
誰かが私は間違っていると私に伝えることができますか?
あなたのXMLには「lense」という要素が含まれていないので、このコードは現時点では機能しません。それは問題を示す短くて完全な*例(理想的にはコンソールアプリケーションとして)を投稿できれば本当に役に立ちます。 –
@JonSkeet - しかし、それは ''を持っています。 OPはドメインの詳細の不完全な難読化を行った。 –
@HenkHolterman:はい、でも、他に何が変わったのかは分かりません。または、おそらくコードでは間違っていた可能性があり、バーコードをハードコードしたときに他の変更を加えたのかもしれません。確かに言うことは不可能ですが、書かれたコードは決して 'lense'要素を見つけることはできません。これは、問題を示す短くて完全なプログラムが非常に重要な場所です。 –