c# - Asp.net:在 foreach 循环中处理 null

标签 c# asp.net casting null linq-to-xml

在 ASP.NET 应用程序 (MVC) 中,我有一个 foreach 循环,它循环遍历可能包含或不包含某些元素的结构:

        <% foreach (XElement segnalazione in ((XElement)ViewData["collezioneSegnalazioni"]).Elements("dossier")) { %>

            <tr>

                <td><%= Html.Encode(segnalazione.Element("NUM_DOSSIER").Value) %></td>
                <td><%= Html.Encode(segnalazione.Element("ANAG_RAGSOC_CGN").Value) %></td>
                <td><%= Html.Encode(segnalazione.Element("ID_RIFATT_SEGN0").Value) %></td>
                <td><%= Html.Encode(segnalazione.Element("FLG_STATUS").Value) %></td>
                <td><%= Html.Encode(segnalazione.Element("DT_ACCADIMENTO").Value)%></td>
                <td><%= Html.Encode(segnalazione.Element("COD_RAMO_LUNA").Value) %></td>
            </tr>
        <% } %>

现在,当没有在 XElement 中设置 Element("DT_ACCADIMENTO") 时,我得到一个 NullReferenceException。有没有快速的方法来处理这个?我试过

<td><%= Html.Encode(segnalazione.Element("DT_ACCADIMENTO").Value ?? "")%></td>

但它不起作用,我猜,它会检查 Value 是否为 null,我对字段本身有疑问。 任何帮助都适用

最佳答案

<td><%= Html.Encode((string)segnalazione.Element("DT_ACCADIMENTO") ?? "")%></td>

关于c# - Asp.net:在 foreach 循环中处理 null,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/964713/

相关文章:

c# - 使用 SonarCloud 分析拉取请求

c# - 将 IEnumerable<Derived> 转换为 IEnumerable<BaseClass>

asp.net - 只为匿名配置 ASP.NET 缓存?

asp.net - 如何将CSS应用到文本框?

c++ - 如何避免强制转换运算符() 和访问运算符[] 冲突?

c# - 读取/过滤事件目录的通讯组子组?

c# - 使用 like 搜索

c# - 在 Umbraco CMS 中创建自定义错误页面

angular - 无法使用 Angular Firebase 的界面

casting - F# 转换一个 int