Как повторно использовать фрагменты HTML на главной странице бритвы asp.net? - PullRequest
0 голосов
/ 19 марта 2019

Я пытаюсь повторно использовать фрагменты HTML на своей странице бритвы (компонент просмотра), но каким-то образом он никогда не вызывает и не прерывает раздел html.

Я использую ядро ​​Asp.net 2.2

        @{
        Func<CategorySimpleModel, Microsoft.AspNetCore.Html.IHtmlContent> DisplayManufacturerPicture=
            @<div class="col-sm-4">
                <div class="row">
                    @foreach (var m in item.Manufacturers)
                    {
                        <div class="col-md-6 col-sm-12">
                            blah blah
                        </div>
                    }
                </div>
            </div>;
        }

   @foreach (var root in Model.Categories)
            { 
               DisplayManufacturerPicture (root);
            }

Ответы [ 2 ]

0 голосов
/ 19 марта 2019

как-то работает только с @, хотя вызов метода внутри синтаксиса на стороне сервера

 @if (root.Manufacturers.Count > 0)
{
   @DisplayManufacturerPicture(root);
}
0 голосов
/ 19 марта 2019

То, что вы пытаетесь сделать, (пока) невозможно.Вы должны взглянуть на частичные виды вместо:

@foreach (var root in Model.Categories)
{
    <partial name="_DisplayManufacturerPicture" model="root" />
}

А затем внутри _DisplayManufacturerPicture.cshtml:

@model CategorySimpleModel

<div class="col-sm-4">
    <div class="row">
        @foreach (var m in item.Manufacturers)
        {
            <div class="col-md-6 col-sm-12">
                blah blah
            </div>
        }
    </div>
</div>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...