gpt4 book ai didi

c# - RuntimeBinderException 因为 Razor 中的空引用

转载 作者:行者123 更新时间:2023-12-05 07:51:04 24 4
gpt4 key购买 nike

刚因为这个开了一个账户。

我在 Visual Studio 上创建了一个空的 Web 项目(没有 MVC、Forms 或 Web API),并且在调试这一行时:

@if (Session["GenCpN"] != null) { @Session["GenCpN"] }

对于我的 default.cshtml 的布局文件 (_GenLayout.cshtml),我遇到了以下异常:

Microsoft.CSharp.RuntimeBinder.RuntimeBinderException was unhandled by user code
HResult=-2146233088
Message=Cannot perform runtime binding on a null reference
Source=Anonymously Hosted DynamicMethods Assembly
StackTrace:
at CallSite.Target(Closure , CallSite , Object , String , Object )
at System.Dynamic.UpdateDelegates.UpdateAndExecute3[T0,T1,T2,TRet](CallSite site, T0 arg0, T1 arg1, T2 arg2)
at CallSite.Target(Closure , CallSite , Object , String , Object )
at System.Dynamic.UpdateDelegates.UpdateAndExecute3[T0,T1,T2,TRet](CallSite site, T0 arg0, T1 arg1, T2 arg2)
at ASP._Page__GenLayout_cshtml.Execute() in C:\Users\PJ\OneDrive\Documents\Dev\BWC\WebApp\_GenLayout.cshtml:line 7
at System.Web.WebPages.WebPageBase.ExecutePageHierarchy()
at System.Web.WebPages.WebPage.ExecutePageHierarchy(IEnumerable`1 executors)
at System.Web.WebPages.WebPage.ExecutePageHierarchy()
at System.Web.WebPages.WebPageBase.ExecutePageHierarchy(WebPageContext pageContext, TextWriter writer, WebPageRenderingBase startPage)
at System.Web.WebPages.WebPageBase.ExecutePageHierarchy(WebPageContext pageContext, TextWriter writer)
at System.Web.WebPages.WebPageBase.<>c__DisplayClass3.<RenderPageCore>b__2(TextWriter writer)
at System.Web.WebPages.HelperResult.WriteTo(TextWriter writer)
at System.Web.WebPages.WebPageExecutingBase.WriteTo(TextWriter writer, HelperResult content)
at System.Web.WebPages.WebPageBase.Write(HelperResult result)
at System.Web.WebPages.WebPageBase.RenderSurrounding(String partialViewName, Action`1 body)
at System.Web.WebPages.WebPageBase.PopContext()
at System.Web.WebPages.WebPageBase.ExecutePageHierarchy(WebPageContext pageContext, TextWriter writer, WebPageRenderingBase startPage)
at System.Web.WebPages.WebPageHttpHandler.ProcessRequestInternal(HttpContextBase httpContext)
InnerException:

顺便说一下,如果有帮助,当我为每个语句使用一行时,Visual Studio 会在右括号处中断。此外,我记得我的代码之前工作 - 除其他更改外 - 我在子文件夹的子文件夹中添加了一个新的 web.config 文件(以添加处理程序。我删除了该文件但它仍然不起作用)。

我想这需要专业人士来回答,但我很感激任何答案,

谢谢!

更新 1:我已经恢复了几个更改并删除了几个文件,但我仍然在这个文件中遇到这个错误。我也删除并重写了 default.cshtml 和 _GenLayout.cshtml,仍然没有。这以不可见的方式影响了解决方案。我发现了错误吗?

更新 2:事实证明,一旦我删除了引用自定义类的后面一行,问题就消失了,但我仍然不明白为什么会出现特定错误。我删除的行是:

<link rel="stylesheet" type="text/css" href="@App.uri("arg1", "arg2")" />

最佳答案

OP 的“UPDATE 2”启发我在我自己的情况下使用 null RuntimeBinderException 查看路标错误之外的问题,并且我修复了我的错误。

与其担心异常堆栈跟踪中指示的行(这很好),在其他地方(堆栈跟踪指示的行的上方或下方)寻找空值

我的情况很简单,因为在某些情况下,未设置 ViewBag.Title,因此当我尝试使用它包含在元描述。

关于c# - RuntimeBinderException 因为 Razor 中的空引用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35509707/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com