对象引用未设置为不可能位置的对象实例

时间:2018-03-06 15:09:29

标签: c# asp.net-mvc razor model-view-controller

客户已设法将“对象引用未设置为对象的实例”,我不明白它是如何发生的。我不能重复这个错误,它每次都适合我。 C#Mvc 5.2.4.0 Razor页面。

这是elmah错误:

  

System.NullReferenceException:对象引用未设置为的实例     宾语。     at ASP._Page_Views_SolidCore_SaveQuotation_cshtml.Execute()in [removed for     简洁] \ SaveQuotation.cshtml:第105行   在System.Web.WebPages.WebPageBase.ExecutePageHierarchy()   在System.Web.Mvc.WebViewPage.ExecutePageHierarchy()   在System.Web.WebPages.StartPage.ExecutePageHierarchy()   在System.Web.WebPages.WebPageBase.ExecutePageHierarchy(WebPageContext   pageContext,TextWriter writer,WebPageRenderingBase startPage)   在System.Web.Mvc.ViewResultBase.ExecuteResult(ControllerContext context)   在   System.Web.Mvc.ControllerActionInvoker.InvokeActionResultFilterRecursive(IList的   1个过滤器,Int32 filterIndex,ResultExecutingContext preContext,   ControllerContext controllerContext,ActionResult actionResult)   在   System.Web.Mvc.ControllerActionInvoker.InvokeActionResultFilterRecursive(IList的   1个过滤器,Int32 filterIndex,ResultExecutingContext preContext,   ControllerContext controllerContext,ActionResult actionResult)   在   System.Web.Mvc.ControllerActionInvoker.InvokeActionResultFilterRecursive(IList> 1过滤器,Int32 filterIndex,ResultExecutingContext preContext,   ControllerContext controllerContext,ActionResult actionResult)   在   System.Web.Mvc.ControllerActionInvoker.InvokeActionResultWithFilters(控制器   上下文controllerContext,IList 1过滤器,ActionResult actionResult)   在System.Web.Mvc.Async.AsyncControllerActionInvoker。<> c__DisplayClass3_1。   b__5(IAsyncResult asyncResult)

这有点难以阅读,但要夏天:在一个cshtml文件中的第105行: Capture of Webpage 所述cshtml文件的第105行读取:

<h4>Quote @Model.QuoteNumber - @Model.QuotePrice</h4>

QuoteNumber和QuotePrice是字符串,这是模型:

public class QuotationModel : DoorVaultLayoutModel
{
    public int QuoteID { get; set; }
    public string QuoteNumber { get; set; }
    public string QuotePrice { get; set; }
    public string AccountCode { get; set; }
    ...
    public bool LoggedIn => (UserTicket != null);
    public QuotationType QuotationType { get; set; }
}

所以我的问题是,当模型已经使用Model.LoggedIn进行测试时,我无法看到如何在Model.string上获取Object引用...错误,因此代码无法到达行105除非Model不为null,并且第105行的其他值可以为空,所以这应该不是问题。

我不知道这是在POST还是GET上,客户没有帮助,但我不明白为什么会在这里产生影响,但是GET和POST中的Action都是第一个宣布一个新模型。

难住了。请帮忙。

0 个答案:

没有答案