Визуализация вложенных комментариев

Я обычно делаю комментарии в простом повторителе.

У меня есть социальное приложение, которое требует вложенных комментариев (возможность комментировать комментарии).

Итак, у меня есть объекты, которые выглядят так:

class Comment
{
    public string Body { get; set; }
    public User Creator { get; set; }
    public List<Comment> ChildComments { get; set; }
}

Могу ли я использовать вложенные повторители? Это даже хорошая идея? Нужно ли предварительно визуализировать HTML в рекурсивном цикле и отправить его в литерал?

Не уверен, что делать с этим.

2 ответа

Решение

Вы можете использовать исходный блок HTML, затем выполнять итерацию по комментариям, добавляя

для каждого начала комментария, затем после каждого комментария вызывать итератор в списке гнезд для этого комментария, а затем добавлять закрывающий

Похоже, вам нужно использовать UserControls здесь. Создайте пользовательский элемент управления для комментария, который знает, как отображать себя, и имеет 0... N других CommentUserControls (возможно, отрисованных с использованием повторителя). Это фактически заканчивается вложенными повторителями (вроде), но инкапсулируя один из повторителей в UserControl, это должно сделать его менее беспорядочным.

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