Sitecore 8.1:Glass.Mapper&剃刀

时间:2015-12-08 16:00:08

标签: model-view-controller sitecore castle-windsor glass-mapper sitecore8.1

在Sitecore 8.1上运行新网站 - 安装并设置了Glass.Mapper但我不能使用@RenderImage这样的调用 - 它抱怨我错过了对Glass.Mapper.Sc.Mvc的引用,我已经。

以下是为Glass.Mapper安装的Nuget模块:

  
      
  • BoC.Glass.Mapper
  •   
  • BoC.Glass.Mapper.Sc
  •   
  • BoC.Glass.Mapper.Sc.CastleWindsor
  •   
  • Castle Windsor
  •   
  • Castle.Core
  •   
  • Glass.Mapper.Sc
  •   

我已将它安装在另一个Sitecore(7.5)实例上 - 旧版本的Glass.Mapper,但我注意到Nuget包不再存在。

有什么想法吗?

谢谢!

1 个答案:

答案 0 :(得分:4)

BoC.Glass.Mapper是Glass Mapper的一个分支,我相信它还没有更新到V4。删除它(以及它添加或部署的任何配置)并重新开始我说。只需添加Glass.Mapper.Sc nuget包即可添加正确的依赖项,并与Sitecore 8.1兼容。

为了更加确定,这是正确的版本:https://www.nuget.org/packages/Glass.Mapper.Sc/

确保您的项目中引用了Sitecore.KernelSystem.Web.Mvc,因为nuget包中有一个安装后步骤,可以为您的项目添加正确版本的Glass dll。

  

为了简单起见,V4使用Powershell脚本来决定哪个   引用添加到您的项目,它检查Sitecore.Kernel   版本和System.Web.Mvc版本,然后安装   适当的Glass.Mapper.Sc和Glass.Mapper.Sc.Mvc程序集。

关于@RenderImage,要么从GlassView<>继承您的观点,要么更好地使用扩展方法,例如@Html.Glass().RenderImage()

此处有更多信息:http://glass.lu/Blog/GlassV4