我有一个Customer类,其中包含Extensions属性,而Extensions又包含属性Any。
我试着这样做:
Dim room = If(customer.Extensions.Any.ElementAt(0).InnerText, Nothing)
但是当它在传入的xml中找不到Extension元素时会引发错误。我认为一旦看到第一个表达式为Nothing就不会返回任何内容。在这种情况下,我是否必须执行多个if语句?
答案 0 :(得分:1)
是的,您必须检查至少一个元素。所以你能做的就是:
Dim a = customer.Extensions.Any.FirstOrDefault()
Dim room = If(a Is Nothing, Nothing, a.InnerText)
根据customer.Extensions.Any
的类型,您可以这样做:
Dim room = If(customer.Extensions.Any.Count > 0, customer.Extensions.Any(0), Nothing)