Как вернуть частичное представление в. net core 3 - PullRequest
0 голосов
/ 15 апреля 2020

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

        [HttpPost]
        public async Task<PartialViewResult> Filter(List<int> categorySearch, int page = 1)
        {
            var items = await _context.ItEntity.Include(i => i.CaRelation).Include(i => i.FaRelation).Include(i => i.ITImages)
                .Where(x => categorySearch.Contains(x.CategoryId) || categorySearch.Count == 0).ToListAsync();
            var VMItems = new List<ShopVM>();
            items.ForEach(it => VMItems.Add(new ShopVM
            {
                ItemsId = it.Id,
                ITName = it.ITName,
                Description = it.Description,
                CaRelation = it.CaRelation,
                CategoryId = it.CategoryId,
                FaRelation = it.FaRelation,
                FactoryId = it.FactoryId,
                Image = it.ITImages.FirstOrDefault().ImName
            }));
            var model = PagingList.Create(VMItems.AsQueryable().AsNoTracking().OrderByDescending(s => s.ItemsId), 20, page);

            var myViewData = new ViewDataDictionary(new EmptyModelMetadataProvider(), new ModelStateDictionary()) { Model = model };
            PartialViewResult result = new PartialViewResult()
            {
                ViewName = "_SearchPro",
                ViewData = myViewData,
            };

            return result;
        }

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

image

вот мой индекс с макетом, некоторыми элементами div и возвратом элементов в виде html .partial

@model ReflectionIT.Mvc.Paging.PagingList<DaryDress.ViewModel.ShopVM>
@using ReflectionIT.Mvc.Paging
@addTagHelper *,ReflectionIT.MVC.Paging


@{
    Layout = "_LayoutPro";
}

<!DOCTYPE html>
<html lang="ar-eg">

<body>
    <div class="hero-wrap hero-bread" style="background-image: url('/images/bg_6.jpg');">
        <div class="container">
            <div class="row no-gutters slider-text align-items-center justify-content-center">
                <div class="col-md-9 ftco-animate text-center">
                    <h1 class="mb-0 bread">المـنـتـجات</h1>
                    <p class="breadcrumbs"><span class="mr-2"><a href="@Url.Action("Main","Main")">الرئيسية</a></span></p>
                </div>
            </div>
        </div>
    </div>



    <section class="ftco-section ftco-animate bg-light">
        <div class="container-fluid">
            <form asp-controller="Store" asp-action="Filter" data-ajax="true" data-ajax-update="#ProductsFilter" data-ajax-mode="replace" data-ajax-method="post">
                <div id="li-search" style="float:right; padding-bottom:5px; background: lightpink; border-radius: 25px;" class="col-lg-2">
                    <div class="sidebar-categories">
                        <div style="color:black; text-align: center; font-size: x-large; font-weight: 600;" class="head"> الفئات</div>
                        <hr />
                        <div action="#">
                            <ul style="text-align:right;direction: rtl; margin-right: -30px; list-style:none;">
                                @foreach (var item in ViewBag.categoryList)
                                {
                                    <li style="list-style:none; padding:0; display:block;" class="filter-list">
                                        <input id="ProductsCheckbox" class="custom-checkbox" type="checkbox" checked="@item.IsSelect" value="@item.Id" name="CategorySearch"><label style="color:grey; margin-right:4px" ;>@item.CaName</label>
                                    </li>
                                }
                            </ul>
                            <input id="btn-search" type="submit" class="btn btn-dark btn-lg" value="بحث" style="display:block; border:solid 1px white; margin:auto; color:pink;" />
                        </div>
                    </div>
                </div>
            </form>


            <form id="ProductsFilter" asp-controller="Store" asp-action="Index" method="get">
                <div class="col-lg-10 row">
                        @Html.Partial("_SearchPro")
                </div>
            </form>
        </div>
    </section>

    <nav id="pagingList" aria-label="Item Paging">
        <div class="navbar-nav">
            @await this.Component.InvokeAsync("Pager", new { pagingList = this.Model })
        </div>
    </nav>
</body>
</html>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...