0

我希望我的字段在 sitecore 中是可编辑的(支持页面编辑器)。我正在使用 MVC 4.0 和 Glass Mapper 来映射字段。在阅读文章Page Editing in MVC之后,我使用了

 @inherits Glass.Mapper.Sc.Web.Mvc.GlassView<My Model Class>

在我的部分视图中获取 >@Editable 但是当我使用继承关键字时,我的页面会出现以下错误消息

Error: Could not load file or assembly 'System.Web.Mvc, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference

有人可以建议如何@Editable 关键字使用 MVC 4.0 和 Glass Mapper 版本 - 3.0.10.23 在 Sitecore 中编辑我的字段。其他版本是

Glass.Mapper.Sc 版本 - 3.2.0.39

Glass.Mapper.Sc.Mvc 版本 - 3.2.0.34

我的视图如下所示

@using Sitecore.Mvc
@using Test.Libraries.Sitecore.Glass.Mapper.Common;
@inherits Glass.Mapper.Sc.Web.Mvc.GlassView<Test.Libraries.Sitecore.Glass.Mapper.Common.Footer>

   <h2>@Editable(x=>x.Title)</h2>

 View which works is

@using Sitecore.Mvc
@using Test.Libraries.Sitecore.Glass.Mapper.Common;
@model Footer

   @Model.PageTitle

请建议。谢谢

4

1 回答 1

1

尝试从 MVC 3 -> MVC 4 添加绑定重定向...

<configuration>
  <runtime>
    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
      <dependentAssembly>
        <assemblyIdentity name="System.Web.Helpers"
             publicKeyToken="31bf3856ad364e35" />
        <bindingRedirect oldVersion="1.0.0.0" newVersion="2.0.0.0"/>
      </dependentAssembly>
      <dependentAssembly>
        <assemblyIdentity name="System.Web.Mvc"
             publicKeyToken="31bf3856ad364e35" />
        <bindingRedirect oldVersion="1.0.0.0-3.0.0.0" newVersion="4.0.0.0"/>
      </dependentAssembly>
      <dependentAssembly>
        <assemblyIdentity name="System.Web.WebPages"
             publicKeyToken="31bf3856ad364e35" />
        <bindingRedirect oldVersion="1.0.0.0" newVersion="2.0.0.0"/>
      </dependentAssembly>
    </assemblyBinding>
  </runtime>
</configuration>

添加到您的 Web 项目的 web.config 中(假设使用 sitecore 可以做到这一点?)。

于 2014-06-20T12:44:09.243 回答