You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Razor页面访问非空局部变量时触发NullReferenceException求助

生产环境Razor页面NullReferenceException疑难问题

问题现象

  • 在Razor页面的@{ ... }代码块中可正常访问变量,但在@(...)上下文访问同一变量时抛出NullReferenceException
  • 已将模型属性访问结果存入确保非空的局部变量studentName,甚至通过?? ""兜底,但在@studentName处仍触发异常
  • 最初直接使用@(sibling.Student)时出现异常,已添加断言确保相关变量非空
  • 问题仅在生产环境必现,本地Debug、Release模式,以及降级到.NET 6、部署Debug构建均无法复现
  • 堆栈跟踪仅指向异常行,生成studentName的代码未抛出任何异常

相关代码

@foreach (var sibling in Model.SiblingApplications)
{
    string studentName = sibling.Student.ToString() ?? "";

    <div class="sibling half line">
        <div class="question-block grow">
            <div class="label">Name</div>
            @* NullReferenceException on the next line! *@
            <div class="value">@studentName</div>
        </div>
    </div>
}

堆栈信息

System.NullReferenceException: Object reference not set to an instance of an object.
   at ProjectName.Pages.Forms.Pages_Forms_RegistrationForm.ExecuteAsync() in X:\ProjectPath\Pages\Forms\RegistrationForm.cshtml:line 240
...

内容的提问来源于stack exchange,提问作者Mahmoud Al-Qudsi

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.27 01:42:02