gpt4 book ai didi

c# - 您如何支持为一个 EPiServer 属性选择多个枚举值?

转载 作者:行者123 更新时间:2023-11-30 21:55:35 26 4
gpt4 key购买 nike

我有一个允许用户选择多个枚举值的属性,目前它可以很好地将信息保存到数据库中并供使用。但是,它似乎无法正确地将属性中的值读回编辑 UI。

我假设枚举存在某种类型问题,导致 SelectMany 值未按您预期的那样设置。

我有以下枚举:

public enum Skills
{
People,
IT,
Management,
Sales,
}

以及以下 ISelectionFactory:

using System;
using System.Collections.Generic;
using System.Linq;

namespace TestSite.Business.EditorDescriptors
{
using EPiServer.Shell.ObjectEditing;

public class EnumSelectionFactory<TEnum> : ISelectionFactory
{
public IEnumerable<ISelectItem> GetSelections(ExtendedMetadata metadata)
{
var values = Enum.GetValues(typeof(TEnum));

return (from object value in values select new SelectItem { Text = this.GetValueName(value), Value = value }).OrderBy(x => x.Text);
}

private string GetValueName(object value)
{
return value.ToString();
}
}
}

然后我在 Alloy Demo 中将属性添加到 ContactPage 模型。

    [SelectMany(SelectionFactoryType = typeof(EnumSelectionFactory<Skills>))]
public virtual string EmployeeLevels { get; set; }

有人知道怎么解决吗?

最佳答案

似乎是一个错误。请报告给EPiServer。

关于c# - 您如何支持为一个 EPiServer 属性选择多个枚举值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32185447/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com