某些模型属性上的Sitecore Glass映射器空引用异常

某些模型属性上的Sitecore Glass映射器空引用异常,sitecore,sitecore7,glass-mapper,sitecore-mvc,Sitecore,Sitecore7,Glass Mapper,Sitecore Mvc,我已经升级到GlassMapper版本4.0.1.8,我在一些模型属性中遇到了奇怪的行为 我所有的模型都是由TDS生成的,并且大多数都运行良好。在一个模型上,Glass Mapper对基础模型中的一个特定属性和所有属性抛出了null引用异常。将模型的所有属性设置为false后,问题消失了 但是,在此之后,我在所有模型属性上设置了SitecoreFieldSettings.DontLoadLazy,因为它们都是由TDS生成的,但是现在不同模型的另一个属性给了我相同的异常,并且该属性也没有lazyl

我已经升级到GlassMapper版本4.0.1.8,我在一些模型属性中遇到了奇怪的行为

我所有的模型都是由TDS生成的,并且大多数都运行良好。在一个模型上,Glass Mapper对基础模型中的一个特定属性和所有属性抛出了null引用异常。将模型的所有属性设置为false后,问题消失了

但是,在此之后,我在所有模型属性上设置了SitecoreFieldSettings.DontLoadLazy,因为它们都是由TDS生成的,但是现在不同模型的另一个属性给了我相同的异常,并且该属性也没有lazyloaded

这是一个例外:

Exception: System.NullReferenceException 
Message: Object reference not set to an instance of an object. 
Source: Glass.Mapper 
at Glass.Mapper.AbstractService.InstantiateObject(AbstractTypeCreationContext abstractTypeCreationContext) 
at Glass.Mapper.Pipelines.ObjectConstruction.Tasks.CreateConcrete.LazyObjectInterceptor.Intercept(IInvocation invocation) 
at Castle.DynamicProxy.AbstractInvocation.Proceed() 
at Castle.Proxies.ListitemLinkProxy.get_Link() 
at ASP._Page_Views_MyProject_Pages_MyPage_cshtml.Execute() in c:\mycode.cshtml:line 86 
at System.Web.WebPages.WebPageBase.ExecutePageHierarchy() 
at System.Web.Mvc.WebViewPage.ExecutePageHierarchy() 
at System.Web.WebPages.WebPageBase.ExecutePageHierarchy(WebPageContext pageContext, TextWriter writer, WebPageRenderingBase startPage) 
at System.Web.Mvc.ViewResultBase.ExecuteResult(ControllerContext context) 
at System.Web.Mvc.ControllerActionInvoker.InvokeActionResultFilterRecursive(IList`1 filters, Int32 filterIndex, ResultExecutingContext preContext, ControllerContext controllerContext, ActionResult actionResult) 
at System.Web.Mvc.ControllerActionInvoker.InvokeActionResultFilterRecursive(IList`1 filters, Int32 filterIndex, ResultExecutingContext preContext, ControllerContext controllerContext, ActionResult actionResult) 
at System.Web.Mvc.ControllerActionInvoker.InvokeActionResultFilterRecursive(IList`1 filters, Int32 filterIndex, ResultExecutingContext preContext, ControllerContext controllerContext, ActionResult actionResult) 
at System.Web.Mvc.ControllerActionInvoker.InvokeActionResultWithFilters(ControllerContext controllerContext, IList`1 filters, ActionResult actionResult) 
at System.Web.Mvc.ControllerActionInvoker.InvokeAction(ControllerContext controllerContext, String actionName) 
1) 为什么Glass mapper会在某些字段上抛出此异常(如果它们是懒散加载的)


2) 为什么在延迟加载第一个模型的字段后,在另一个没有延迟加载的字段上出现相同的异常?

这看起来像是一个bug,您能在Github上登录并向我发送一个引发异常的模型示例吗?我会在几天内完成,我需要一些时间来复制它,我的模型由几个(基本)模型组成,这些模型分为几个项目(这是一个多站点解决方案),所以我需要从我的项目中提取这些模型。这最终会被记录为bug吗?我们也看到了同样的事情。还没有,我正忙于项目的其他部分,还没有复制它。我确实发现我的Sitecore数据模板中有一个名为“Image”的字段,它使TDS将图像字段链接到错误的类,而不是Glass.Mapper.Sc.fields.Image。这可能是我的问题,但我仍然需要恢复一些更改并重新生成。我们还注意到字段的名称很重要。例如,为模板、字段部分和字段本身指定相同的名称不是一个好主意。