Sitecore字段值被截断为255个字符?

时间:2016-01-29 19:58:27

标签: sitecore sitecore8 glass-mapper

我遇到一个问题,其中字符串的值 - 存储在单行文本字段中 - 被返回为前截断为前255个字符。当我查看内容编辑器时,我看到多余的字符。如果我使用Sitecore Rocks查询数据库,我会看到额外的字符。

这可能是由GlassMapper引起的吗?

在下面的代码示例中,正在截断的是LinkText。

我的模特......

using Glass.Mapper.Sc.Configuration.Attributes;
using Glass.Mapper.Sc.Fields;
using MySite.Extensions;
using MySite.Models.Base;
using Sitecore.Data.Items;
using System;

namespace MySite.Models.Items
{
    [SitecoreType]
  public class LinkItem : ISitecoreBase, ILinkItemBase
  {
    // ISitecoreBase
    public virtual Guid Id { get; set; }
    public virtual string Path { get; set; }
    public virtual Item InnerItem { get; set; }

    // ILinkItemBase
    public virtual string LinkText { get; set; }
    public virtual Link LinkTarget { get; set; }

    /// <summary>
    /// Does the link have neccessary content?
    /// </summary>
    /// <returns></returns>
    public bool IsValid()
    {
      return this.LinkText.HasValue();
    }
  }
}
using Glass.Mapper.Sc.Configuration.Attributes;
using Glass.Mapper.Sc.Fields;
using MySite.Extensions;

namespace MySite.Models.Base
{
    [SitecoreType(TemplateId = Constants.TemplateIds.LINK_ITEM_BASE)]
  public interface ILinkItemBase
  {
    [SitecoreField(Constants.LinkItemBase.LINK_TEXT)]
    string LinkText { get; }

    [SitecoreField(Constants.LinkItemBase.LINK_TARGET)]
    Link LinkTarget { get; }
  }
}

逻辑片段...... GetLinkItems的第3行,this.LinkItems中项目的LinkText已经显示为截断。

public virtual IEnumerable<LinkItem> LinkItems { get; set; }

public ICollection<LinkItem> GetLinkItems()
    {
      ICollection<LinkItem> linkItemCollection = new List<LinkItem>();

      if (this.LinkItems.HasItems())
      {
        foreach (LinkItem LinkItem in this.LinkItems)
        {
          if (LinkItem.IsValid())
          {
            linkItemCollection.Add(LinkItem);
          }
        }
      }

      return linkItemCollection;
    } 

0 个答案:

没有答案