바코드를 읽고 바코드라는 텍스트 상자에 넣는 별도의 방법으로 읽는 바코드를 넣었습니다. 데이터가 문제를 그 바코드에 풀어서하지만 직면로드 버튼을 생성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;
}
이제 메시지 박스가 strBarCode가 올바른 값을 가지고 말한다하지만이 프로그램에 표시되지 않으며 의 값이 null로 나오고 에 다른 손으로 직접 넣으면 "780672318863"strBarcode 자리에 올바르게 값을 표시하고있다
아무도 내가 잘못 가고있다 말해 줄 수 있습니까?
XML에는 "lense"라는 요소가 포함되어 있지 않으므로이 코드가 현재 작동하지 않을 수 있습니다. 문제를 증명하는 짧지 만 완성 된 * 예제 (이상적으로는 콘솔 앱)를 게시 할 수 있다면 정말 도움이 될 것입니다. –
@JonSkeet - 그러나 그것은'를 가지고 있습니다. OP는 도메인 세부 정보의 불완전한 난독 화를 수행했습니다. –
@HenkHolterman : 예,하지만 선량은 동시에 변경된 사항을 알고 있습니다. 또는 아마도 코드가 난해하지 않은 것일 수도 있습니다. 실제로 코드에서 잘못되었거나 바코드를 하드 코딩했을 때 다른 변경 작업을 한 것일 수도 있습니다. 확실하게 말할 수는 없지만 - 작성된 코드는 절대로 lense 요소를 찾지 못한다는 것을 알 수 있습니다. 이것은 문제를 보여주는 짧지 만 완전한 프로그램이 중요한 이유입니다. –