Изменить SelectMany Разделитель

Я использую SelectMany атрибут следующим образом:

[SelectMany(SelectionFactoryType = typeof(TagsSelectionFactory))]
public virtual string Tags { get; set; }

Со следующим SelectionFactory:

public class TagsSelectionFactory : ISelectionFactory
{
    public IEnumerable<ISelectItem> GetSelections(ExtendedMetadata metadata)
    {
        var articleTags = DataFactory.Instance.GetChildren<ArticleTagPage>(new ContentReference(18));
        var tags = new List<SelectItem>();
        foreach (var item in articleTags)
        {
            tags.Add(new SelectItem { Text = item.TagName, Value = item.ContentLink.ID });
        }
        return tags;
    }
}

Вот как я получаю значения:

var articleObjects = DataFactory.Instance.GetChildren<ArticlePage>(currentPage.ArticlesLocation);
foreach (var item in articleObjects)
{
    //this is where i get the csv value
    var tags = item.Tags;
}

//ArticleTagPage.cs
[ContentType(DisplayName = "ArticleTagPage", GUID = "0401929a-903a-414f-acd1-61ad11319462", Description = "")]
public class ArticleTagPage : PageData
{
    [CultureSpecific]
    [Display(Name = "Tag Name", Description = "", GroupName = SystemTabNames.Content, Order = 1)]
    public virtual string TagName { get; set; }
}

Все ArticleTagPage расположены под ArticleTagsContainerPage, Цель состоит в том, чтобы управлять каждой статьей набором тегов, вроде SO вопросов со своими тегами.
Моя проблема в том, что, как только свойство заполняется, оно содержит запятую (,) строка с разделителями, и это может вызвать проблемы в тех случаях, когда данные содержат запятую.
Можно ли изменить разделитель на что-то вроде ; или |или, может быть, просто вернуть коллекцию выбранных значений?

0 ответов

Другие вопросы по тегам