我有一个奇怪的问题.
除了一个视图页面,我的MVC应用程序似乎工作得很好.
有问题的视图页面(组织/编辑)在页面上的每个代码项上获得'NullReferenceException'.无论是Html.TextBoxFor()还是HTML.AntiForgeryToken().
我将我的模型,视图和控制器放在另一个我认为相关的问题上 - /sf/ask/1853310651/
如下所示,我的模型内部确实有信息.此屏幕截图是在控制器内部的" 返回视图("编辑",型号) " 处拍摄的.
例外细节
- Source = App_Web_zu4jlld0
- StackTrace = at ASP._Page_Views_Organization_Edit_vbhtml.Execute() in C:\Users\mtaylor\Projects\Check Im Here\mtaylor-branch\CheckImHere_v2\CheckImHereMVC\Views\Organization\Edit.vbhtml:line 16
at System.Web.WebPages.WebPageBase.ExecutePageHierarchy()
at System.Web.Mvc.WebViewPage.ExecutePageHierarchy()
at System.Web.WebPages.StartPage.RunPage()
at System.Web.WebPages.StartPage.ExecutePageHierarchy()
at System.Web.WebPages.WebPageBase.ExecutePageHierarchy(WebPageContext pageContext, TextWriter writer, WebPageRenderingBase startPage)
at System.Web.Mvc.RazorView.RenderView(ViewContext viewContext, TextWriter writer, Object instance)
at System.Web.Mvc.BuildManagerCompiledView.Render(ViewContext viewContext, TextWriter writer)
at System.Web.Mvc.ViewResultBase.ExecuteResult(ControllerContext context)
at System.Web.Mvc.ControllerActionInvoker.InvokeActionResult(ControllerContext controllerContext, ActionResult actionResult)
at System.Web.Mvc.ControllerActionInvoker.<>c__DisplayClass1a.<InvokeActionResultWithFilters>b__17()
at System.Web.Mvc.ControllerActionInvoker.InvokeActionResultFilter(IResultFilter filter, ResultExecutingContext preContext, Func`1 continuation)
Run Code Online (Sandbox Code Playgroud)

视图
@ModelType CheckImHereMVC.OrganizationEditViewModel
@Using Html.BeginForm("Edit", …Run Code Online (Sandbox Code Playgroud) 这是我的代码
@if (ViewBag.last5Articles != null)
{
List<Article> articles = ViewBag.last5Articles;
foreach (var article in articles)
{
<div class="col-md-12">
<div class="row">
<h2>@article.Title</h2>
</div>
<div class="row">
<div class="col-md-6">
<p>@article.Body</p>
</div>
</div>
</div>
}
}
Run Code Online (Sandbox Code Playgroud)
我在foreach循环的开头放了一个断点.我可以看到该文章不是null,它有一个标题和一个正文.但是当我到达文章时.我和F10(Step Over)突然变得空无一人!
"
'System.NullReferenceException'App_Web_ayg111kp.dll中发生了类型异常,但未在用户代码中处理"
.当我完成调试时,黄色屏幕欢迎我使用此消息" Object reference not set to an instance of an object".
任何人都可以向我解释这个问题.我正在使用.NET 4.5.2和MVC 5.2