0

我无法让我的自定义令牌与我的 ContentPart 一起使用。我的问题与此处描述的相同: 是否可以使用自定义类型属性的内容创建果园自动路由?

我已经创建了我的令牌:

namespace MyNS.Types.Providers
{
    public class BioPartTokens : ITokenProvider
    {
        public BioPartTokens() {
            T = NullLocalizer.Instance;
        }
        public Localizer T { get; set; }
        public void Describe(dynamic context) {
            context.For("Bio", T("Bio"), T("Tokens for the Bio content type"))
                .Token("FirstName", T("FirstName"), T("First name of person."))
                .Token("LastName", T("LastName"), T("Last name of person."));
        }

        public void Evaluate(dynamic context) {
            context.For<BioPart>("Bio")
                .Token("FirstName", (Func<BioPart, object>) (f => f.ContentItem.Parts.OfType<BioPart>().First().FirstName.ToLower()))
                .Chain("FirstName", "FirstName", (Func<BioPart, object>)(f => f.ContentItem.Parts.OfType<BioPart>().First().FirstName.ToLower()))
                .Token("LastName", (Func<BioPart, object>)(f => f.ContentItem.Parts.OfType<BioPart>().First().LastName.ToLower()))
                .Chain("LastName", "LastName", (Func<BioPart, object>)(f => f.ContentItem.Parts.OfType<BioPart>().First().LastName.ToLower()))
                ;
        }
    }
}

我的模型:

namespace MyNS.Types.Models
{
    public class BioPart: ContentPart<BioPartRecord>
    {
        public string FirstName {
            get { return Record.FirstName; }
            set { Record.FirstName = value; }
        }

        public string LastName
        {
            get { return Record.LastName; }
            set { Record.LastName = value; }
        }

        public RoleInSchool RoleInSchool
        {
            get { return Record.RoleInSchool; }
            set { Record.RoleInSchool = value; }
        }

        public bool IsBlogger {
            get { return Record.IsBlogger; }
            set { Record.IsBlogger = value; }
        }
    }
}

尽管我已经尝试了使用以下所有标记的 URL 模式,但我无法从我提交的表单中获取值:

{Content.Bio.FirstName}
{Content.BioPart.FirstName}
{Bio.FirstName}
{BioPart.FirstName}

没有记录错误。

4

0 回答 0