Как пропустить / игнорировать прокомментированный код Xelement - PullRequest
0 голосов
/ 18 октября 2019

Я пытаюсь пропустить пустые / пустые элементы XElement. То, что я не могу обнаружить, это закомментированный код в xml XElement.

var t = (price == null | price.IsEmpty | price.Value == null | price.Value =="")? default(double): (double) price;

Я сделал это, я считаю, он обнаруживает самозакрывающиеся теги, пустые теги, и он должен обнаруживать комментарии слишком сильно по цене. Значение == null

var root = XElement.Load (@"C:\Users\John\OneDrive\Uni\Sem 02\Comp Sci 335\06-XML\booksort.xml");

    var books = new List <Book> ();
    foreach (var book in root.Elements ("book")) {
        var title = book.Element ("title");
        var price = book.Element ("price");
        //Console.WriteLine ($"{title} : {price}$");



        var book_object = new Book { Title = (string) title};
        // book_object.Dump ();


        //var t = (!string.IsNullOrEmpty(price.Value)) ?(double) pirgmace:0.00;
        var t = (price == null | price.IsEmpty | price.Value == null | price.Value =="")? default(double): (double) price;
        t.Dump();


        books.Add (book_object);
    }

цена - это то, что комментируется

<book genre="novel" publicationdate="1982" bk:ISBN="1-861001-45-3">
    <title>Sense and Sensibility</title>
    <author>
      <first-name>Jane</first-name>
      <last-name>Austen</last-name>
    </author>
    <!--<price>19.95</price>-->
  </book>

Это ошибка, которую я получаю

NullReferenceException: Object reference not set to an instance of an object.

...