如何更正 linqXML 中的处理异常

本文关键字:处理 异常 何更正 linqXML | 更新日期: 2023-09-27 17:57:03

我在 C# 中使用 Linq xml,但当某些元素为 null 时,我不知道如何纠正处理异常。例如,我需要获取属性的一些值,但此属性可以是空的,也可以是路径的某些部分为空。我喜欢这个:

public static string GetImage(this HtmlNode element)
    {
        var result = "";
        try
        {
            return result = element.Element("div").Element("a").Element("img")?.GetAttribute("src").Value;
        }
        catch (Exception)
        {
            return result;
        }
    }

也许我可以轻松做到?谢谢你的回答。

如何更正 linqXML 中的处理异常

如果您已经在使用 C# 6.0,请使用 null 条件运算符,就像您在 Element("img") 之后所做的那样

return element?.Element("div")?.Element("a")?.Element("img")?.GetAttribute("src")?.Value;