Как отрендерить пользовательский HTML внутри партиала? - PullRequest
0 голосов
/ 28 мая 2020

В моем. NET Core проекте есть часть сложной HTML, которая дублируется в нескольких местах. Поэтому я решил использовать частичное представление для его отображения. Однако он также использует модель и инкапсулирует код HTML, появляющийся на странице внутри него.

Как я могу поместить этот HTML внутри партиала, просто не копируя, вставляя код виджета повсюду?

Страница:

@{
    var widget1 = new Widget() { Title = "First" };
    var widget2 = new Widget() { Title = "Second" };
}

<partial name="_Widget" model="widget1"/>
<p>Hello, this is some HTML code that I want to be placed in the _Widget partial above.</p>

<partial name="_Widget" model="widget2"/>
<p>This is another widget with content.</p>

Частичный виджет:

//_Widget.cshtml
@model Widget
@{
    var widget = Model ?? new Widget();
}

<div class="panel">
    <h2>@widget.Title</h2>
    <div>
        //How to render content here?
    </div>
</div>

Ожидаемый результат:

<div class="panel">
    <h2>First</h2>
    <div>
        <p>Hello, this is some HTML code that I want to be placed in the _Widget partial above.</p>
    </div>
</div>

<div class="panel">
    <h2>Second</h2>
    <div>
        <p>This is another widget with content.</p>
    </div>
</div>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...