在多语言sitecore站点上使用Glass
我正在构建一个多语言的Sitecore站点,并使用Glass Mapper作为ORM,但是当Sitecore项不存在于特定语言中时,遇到了一个问题 与其将空模型传递到我可以检查的视图中,我得到: 传递到字典中的模型项的类型为“Sitecore.Mvc.Presentation.RenderingModel”,但此字典需要类型为“foo”的模型项 此异常发生在占位符行上,而不是特定视图中 为每个渲染指定一个模型似乎可以解决指定了数据源的渲染问题(尽管这样做会导致模型有一个实例,但每个属性都是空的)。但如果数据源是常规上下文项,则会出现错误: 找不到包含模型定义的项。模型路径:/sitecore/layout/Models/foo在多语言sitecore站点上使用Glass,sitecore,glass-mapper,Sitecore,Glass Mapper,我正在构建一个多语言的Sitecore站点,并使用Glass Mapper作为ORM,但是当Sitecore项不存在于特定语言中时,遇到了一个问题 与其将空模型传递到我可以检查的视图中,我得到: 传递到字典中的模型项的类型为“Sitecore.Mvc.Presentation.RenderingModel”,但此字典需要类型为“foo”的模型项 此异常发生在占位符行上,而不是特定视图中 为每个渲染指定一个模型似乎可以解决指定了数据源的渲染问题(尽管这样做会导致模型有一个实例,但每个属性都是空的)
有什么想法吗?Sitecore不想渲染没有模型的视图,这就是为什么它使用父级模型调用它,因为它没有语言版本,而且
Glass.Mapper
model binder返回空值。我建议您在Sitecore MVC管道中拦截此案例,检测您没有合适模型的案例,然后简单地返回一个EmptyResult
。