当数据源项不存在时,Sitecore 8引发null异常

当数据源项不存在时,Sitecore 8引发null异常,sitecore,sitecore8,glass-mapper,Sitecore,Sitecore8,Glass Mapper,我面临以下问题,无法找到解决方法 我有一个渲染,它的数据源指向树中的一个项目 我发布渲染,但不发布引用项 查看页面时,我收到一个错误。[附件是我收到的错误屏幕截图] 我用的是玻璃制图器 提前感谢您的帮助。最好的解决方案是进入mvc.getRenderer管道并验证数据源是否确实存在,否则就可以正常地回退 已经针对这一问题提出了许多解决方案,这是一个已知的“问题”,尽管它不是玻璃特有的问题: 所有这些解决方案都会检查数据源项是否存在,在正常模式下会忽略错误,但在页面编辑器模式下会向编

我面临以下问题,无法找到解决方法

  • 我有一个渲染,它的数据源指向树中的一个项目
  • 我发布渲染,但不发布引用项
  • 查看页面时,我收到一个错误。[附件是我收到的错误屏幕截图]
  • 我用的是玻璃制图器


    提前感谢您的帮助。

    最好的解决方案是进入
    mvc.getRenderer
    管道并验证数据源是否确实存在,否则就可以正常地回退

    已经针对这一问题提出了许多解决方案,这是一个已知的“问题”,尽管它不是玻璃特有的问题:

    所有这些解决方案都会检查数据源项是否存在,在正常模式下会忽略错误,但在页面编辑器模式下会向编辑器显示警告,以便在未选择任何数据源的情况下显示需要设置数据源的事实


    它也是一个类似解决方案的玻璃贴图器。

    最好的解决方案是进入
    mvc.getRenderer
    管道并验证数据源是否实际存在,否则就可以正常地回退

    已经针对这一问题提出了许多解决方案,这是一个已知的“问题”,尽管它不是玻璃特有的问题:

    所有这些解决方案都会检查数据源项是否存在,在正常模式下会忽略错误,但在页面编辑器模式下会向编辑器显示警告,以便在未选择任何数据源的情况下显示需要设置数据源的事实


    它也是在玻璃映射器中使用类似的解决方案。

    要详细说明jammykam的答案,您可以执行类似于下面我在本文中找到的代码的操作

    配置修补程序:

    <configuration xmlns:patch="http://www.sitecore.net/xmlconfig/">
      <sitecore>
        <pipelines>
          <mvc .getrenderer="">
            <processor patch:instead="processor[@type='Sitecore.Mvc.Pipelines.Response.GetRenderer.GetViewRenderer, Sitecore.Mvc']" type="Namespace.To.Sitecore.Pipelines.Response.GetRenderer.GetViewRendererWithItemValidation, Library">
            </processor>
          </mvc>
        </pipelines>
      </sitecore>
    </configuration>
    

    为了详细说明jammykam的答案,您可以使用下面的代码,我在本文中找到了这些代码

    配置修补程序:

    <configuration xmlns:patch="http://www.sitecore.net/xmlconfig/">
      <sitecore>
        <pipelines>
          <mvc .getrenderer="">
            <processor patch:instead="processor[@type='Sitecore.Mvc.Pipelines.Response.GetRenderer.GetViewRenderer, Sitecore.Mvc']" type="Namespace.To.Sitecore.Pipelines.Response.GetRenderer.GetViewRendererWithItemValidation, Library">
            </processor>
          </mvc>
        </pipelines>
      </sitecore>
    </configuration>
    

    哪个版本的玻璃映射器?哪个版本的玻璃映射器?