Я недавно создал пользовательский интерфейс ниже в HTML / Javascript / CSS.Мне нужно разбить его на управляемые куски как часть приложения Asp.net core 2.1, технологии, в которой я очень новичок.

Моей первой мыслью было создать три отдельных компонента ViewComponents (зеленый, красный и синий) и с помощью метода Component.Invoke () я смог легко создать пользовательский интерфейс, чтобы он выглядел именно так, как я хотел.
Однако проблема возникла, когда я понял, что при отправке корневого компонента я не смог извлечь данные из двух дочерних компонентов, таких как значения, отмеченные флажками.
Моя вторая мысль заключалась в использованииTagHelpers для синих частей, но та же проблема все еще сохраняется.
Моя третья мысль - создать частичное представление для зеленой части, а затем, используя простой цикл foreach, я могу создать красную часть, которая сама будетсодержит цикл foreach, который создаст синюю часть.Таким образом, у меня полный доступ к привязке данных в моем частичном представлении ко всем дочерним элементам управления.
Я не вижу другого способа связи между Views / ViewComponents / TagHelpers.Это правильный путь?