使用Glass Mapper的Sitecore 8可编辑字段

迈克·D

由于某种原因,Visual Studio在视图中给了我这个错误:

无法将Lambda表达式转换为类型'System.Linq.Expressions.Expression>',因为它不是委托类型

另外,我在lambda上没有智能感知。

根据这篇文章,我确保将我的MVC版本降至5.1.0:

Sitecore Glass可编辑无法转换Lambda表达式

不幸的是,我没有需要直接在该帖子上发表评论的Stack Overflow点。遗憾的是,MVC版本解决方案对我不起作用。当我发布进行部署时,数据可以很好地通过-编辑工作就可以了-但是我宁愿不只是忽略红色的波浪线和缺乏智能感。

在全新的Sitecore 8 / Visual Studio MVC应用程序设置中,我运行了:

更新包Glass.Mapper.Sc.CastleWindsor给我v3.3.1.26

然后我运行Install-Package Glass.Mapper.Sc.Mvc-5给我v3.3.1.48

我建立了一个模型

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using Glass.Mapper.Sc;
using Glass.Mapper.Sc.Configuration.Attributes;

namespace myns.app.Models
{
    [SitecoreType]
    public class BaseContent
    {
        [SitecoreId]
        public virtual Guid Id { get; set; }

        [SitecoreField("Content Title")]
        public virtual string Title { get; set; }

        [SitecoreField("Summary Content")]
        public virtual string Summary { get; set; }

        [SitecoreField("Full Content")]
        public virtual string Content { get; set; }

        [SitecoreField("Content Image")]
        public virtual Glass.Mapper.Sc.Fields.Image ImagePath { get; set; }

    }
}

并具有某种工作视图

@inherits Glass.Mapper.Sc.Web.Mvc.GlassView<myns.app.Models.BaseContent>

<div>
    <h4>BaseContent</h4>
    <hr />
    @Model.Title
    <p>@Editable(Model, x => x.Title)</p>
    <p>@Editable(Model, x => x.Summary)</p>
    <h5>content</h5>
    <p>@Editable(Model, x => x.Content)</p>
    <p>@RenderImage(Model, x => x.ImagePath)</p> 
</div>

在此先感谢您的任何投入!

更新:当我在Sitecore提供的web.config中的compiling > assembly中注释掉以下三行时,问题似乎消失了。不确定这是最好的做法:

<compilation defaultLanguage="c#" debug="false" targetFramework="4.5">
      <assemblies>
        <add assembly="System.Web.Abstractions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
        <add assembly="System.Web.Routing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
        <add assembly="System.Data.Linq, Version=4.0.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089" />
        <add assembly="System.Web.Helpers, Version=3.0.0.0, Culture=neutral,PublicKeyToken=31BF3856AD364E35" />
        <add assembly="System.Web.Mvc, Version=5.2.2.0, Culture=neutral,PublicKeyToken=31BF3856AD364E35" />
        <add assembly="System.Web.WebPages, Version=3.0.0.0, Culture=neutral,PublicKeyToken=31BF3856AD364E35" />
        <add assembly="System.Web.WebPages.Razor, Version=3.0.0.0, Culture=neutral,PublicKeyToken=31BF3856AD364E35" />
        <!--add assembly="System.Web.Http, Version=5.1.0.0, Culture=neutral,PublicKeyToken=31BF3856AD364E35" /-->
        <!--add assembly="System.Web.Http.WebHost, Version=5.1.0.0, Culture=neutral,PublicKeyToken=31BF3856AD364E35" /-->
        <!--add assembly="System.Net.Http.Formatting, Version=5.1.0.0, Culture=neutral,PublicKeyToken=31BF3856AD364E35" /-->
      </assemblies>
    </compilation>
迈克·D

在站点的web.config中的Assemblys节点中注释掉以下三行,可以解决此问题。

<!--add assembly="System.Web.Http, Version=5.1.0.0, Culture=neutral,PublicKeyToken=31BF3856AD364E35" /-->
<!--add assembly="System.Web.Http.WebHost, Version=5.1.0.0, Culture=neutral,PublicKeyToken=31BF3856AD364E35" /-->
<!--add assembly="System.Net.Http.Formatting, Version=5.1.0.0, Culture=neutral,PublicKeyToken=31BF3856AD364E35" /-->

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

清除使用Glass.Mapper.Sc BeginRenderLink呈现的Sitecore链接字段可删除包装的字段

使用Glass Mapper在Sitecore视图渲染中使用通用类型

Sitecore Glass Mapper-使用项目渲染

如何不使用Sitecore Glass Mapper渲染链接标题

Glass.Mapper.Sc是否将索引字段用于sitecore7搜索

Sitecore Glass.Mapper返回null

如何在Sitecore 7.x和Solr 4.7中使用Glass Mapper 3.3

从Glass.Mapper.Sitecore升级到Glass.Mapper.Sc时缺少InstanceContext

Sitecore Glass Mapper获取所有兄弟姐妹

如何防止Glass Mapper进行Sitecore快速查询?

对于Glass Mapper,如果在“常规链接”字段中选择了“内部链接”,则Glass Mapper使用项目名称作为链接文本

包含HTML格式的页面编辑器中的Sitecore富文本字段不可编辑

在Sitecore中,Glass Mapper Editable功能在遍历对象集合时如何工作?

Sitecore中的A / B测试-Glass Mapper中的空数据源错误

如何使用SuitScript检查字段是否可编辑?

使用Glass Mapper对子代类型使用流利的映射

如何使用glass.mapper获取项目的模板ID?

使用Itext 7填写Acro字段后,将可编辑的PDF更改为“不可编辑/只读”

在本机应用中使用委派权限编辑用户个人资料。哪些字段是可编辑的?

如何使用HTML,CSS,Javascript ...在“可编辑字段”中垂直键入文本?

使用shouldChangeCharactersInRange函数时,如何使特定文本字段不可编辑

使用Glass的Sitecore MVC:位于的视图必须源自WebViewPage或WebViewPage <TModel>

使用Glass.Mapper将Droplist项目映射到复杂类型

如何将标准值应用于使用Glass.Mapper创建的项目

Glass Mapper V4语言项回退,如何使其与Autofac一起使用?

如何使用Glass Mapper获取空值而不是空字符串?

使用TextChangedListener的引用可编辑

为什么所有Glass.Mapper字段都应该是虚拟的?

如何使用iOS8中的滑动和删除功能使UITableViewcell可编辑