假设我期待 XML 如下,并且我试图在 layer3 中提取数据:
<Layer1>
<Layer2>
<Layer3>Test</Layer3>
</Layer2>
</Layer1>
C#:
var data = doc.Element("Layer1").Element("Layer2").Element("Layer3");
如果缺少 layer1 或 layer2 元素,这将导致 null 异常。我一直在用 try/catch 包装这些查询,并在 catch 块中默认变量,但这种方法有异味。如果缺少任何图层,是否有更好的方法将“数据”变量设置为空?