przemo27ns Ответов: 1

Как добавить счетчик с нумерацией строк на весь сайт в MVC


Я хочу добавить автоматическую нумерацию элементов заказа на все страницы.
Ниже приведен пример, который работает, но только цифры на одной странице. Перейдя на следующую страницу, он начинает с самого начала.



public ActionResult ListaZlecen(int? IdStatusZlecenia, int strona = 1)
            {
                var ListaZlecenWszystkich = db.Zlecenia.ToList();
                var userId = User.Identity.GetUserId();
                //var ListaZlecen = db.Zlecenia.Where(p => p.UserId == userId).ToList();
                //var ListaZlecen = db.Zlecenia.OrderBy(w => w.IdZlecenia).Where(p => p.UserId == userId).Skip((strona - 1) * WielkoscStrony).Take(WielkoscStrony).ToList();
                var ListaZlecen = db.Zlecenia.OrderBy(w => w.IdZlecenia).Skip((strona - 1) * WielkoscStrony).Take(WielkoscStrony).ToList();
                //   var zleceniezalacznik = db.ZleceniaZalaczniki.ToList();
    
                var viewodel = new ListaZlecenUzytkownikaViewModel()
                {
                    StronaInfo = new StronaInfo
                    {
    
                        AktualnaStrona = strona,
                        PozycjeNaStrone = WielkoscStrony,
                        WszystkiePozycje = ListaZlecenWszystkich.Count()
    
                    },
                    ListaZlecenUzytkownika = ListaZlecen
                };
    
                return View(viewodel);
            }

and View
 

    @model AplikacjaHelpDesk.ViewModels.ListaZlecenUzytkownikaViewModel
    @using AplikacjaHelpDesk.Infrastructure;
    
    @{
        ViewBag.Title = "Lista Zlecen Użytkownika";
        Layout = "~/Views/Shared/_LayoutAdministracja.cshtml";
    }
    
    
    <div class="container-fluid">
        <img src="~/Content/Images/Layout/Home.png" />
        <a href="link">
            @Html.MvcSiteMap().SiteMapPath()
        </a>
        <h2><span class="glyphicon glyphicon-user"></span> Lista Zleceń </h2>
        <br /><br />
        <div id="divLoading" class="panel panel-primary text-center text-primary" style="display:none;">
            <h3>Proszę czekać ładowane są posty!</h3>
        </div>
        <div id="divLoadingForm" class="panel panel-primary text-center text-primary" style="display:none;">
            <h3>Proszę czekać ładuję formularz</h3>
        </div>
        @*@if (ViewBag.Informacja != null)
                    {
                <div class="alert alert-warning"><h4>@TempData["Dodano-Post"]</h4></div>
            }*@
    
        <table class="table table-responsive table-striped transactions" style="text-combine-upright:all;">
            <tr style="text-transform: uppercase; text-combine-upright:all;">
                <th>
                    <label>Pozycja Nr.</label>
                </th>
                <th>
                    <label>Nr Zlecenia</label>
                </th>
                <th>
                    <label>Data Przyjęcia Zlecenia</label>
                </th>
                <th>
                    <label>Data Planowanego Zakończenia Zlecenia</label>
                </th>
                <th>
                    <label>Data zakończenia zlecenia</label>
                </th>
                <th style="width: 160px;"></th>
                <th style="width: 160px;"></th>
            </tr>
            @{ var i = 0;}
            @foreach (var item in Model.ListaZlecenUzytkownika)
            {
    
                <tr class="panel panel-primary">
                    @*
                            <h5>Zlecenie nr: @Html.DisplayFor(modeItem => item.IdZlecenia)</h5>
           
                    <td>
                            @{i++;}
                            @i
                    </td>
                    <td>
                        <h5>Zlecenie nr: @Html.DisplayFor(modeItem => item.IdZlecenia)</h5>
                    </td>
                    <td>
                        @Html.DisplayFor(modelItem => item.DataPrzyjeciaZlecenia)
                    </td>
                    <td>
                        @Html.DisplayFor(modelItem => item.DataPlanowaniaZakonczenia)
                    </td>
                    <td>
                        @Html.DisplayFor(modelItem => item.DataZakonczenia)
                    </td>
                    <td>
                        @Ajax.ActionLink("Pokaż Posty Zlecenia", "_ListaPostow", new { idZlecenia = @item.IdZlecenia }, new AjaxOptions()
                   {
                       HttpMethod = "GET",
                       LoadingElementId = "divLoading",
                       UpdateTargetId = "divPozycje",
                       InsertionMode = InsertionMode.Replace
    
                   }, new { @class = "btn btn-primary" })
                    </td>
                    <td>
    
    
                        @Ajax.ActionLink("Dodaj Odpowiedz", "_DodajPost", new { idZlecenia = @item.IdZlecenia }, new AjaxOptions()
                   {
                       HttpMethod = "GET",
                       LoadingElementId = "divLoadingForm",
                       UpdateTargetId = "divDodajPozycje",
                       InsertionMode = InsertionMode.Replace
    
                   }, new { @class = "btn btn-primary" })
                    </td>
    
                </tr>
                <tr style="background: #23527c; color:white;">
                    <td>
                        <label>Opis załącznika</label>
                    </td>
                    <td style="width: 120px;">
                        <label>Załącznik</label>
                    </td>
                </tr>
                <tr class="panel panel-group">
                    <td>
                        @Html.Raw(item.ZleceniaZalaczniki.Opis)
                    </td>
                    <td>
                        <span class="btn btn-primary">
                            @Html.ActionLink("Pobierz", "Download", "Zlecenia", new { nazwaPliku = @item.ZleceniaZalaczniki.NazwaPliku }, null)
                            <span class="glyphicon glyphicon-download" aria-hidden="true"></span>
                        </span>
                    </td>
                </tr>
                <tr id="divDodajPozycje"></tr>
            }
        </table>
    
        <br />
        <div class="btn-group pull-right">
            @Html.LinkStrony(Model.StronaInfo, x => Url.Action("ListaZlecen", new { strona = x }))
        </div>
        <br />
        <hr />
        <div id="divPozycje">
    
        </div>
    </div>


Что я уже пробовал:

Я пробовал этот способ, но он создает нумерацию только на одной странице. Переход к следующей нумерации создается с самого начала.

@{ var i = 0;}
     <td>
        @{i++;}
        @i
     </td>


Я прошу помощи в создании нумерации для всей коллекции заказов

przemo27ns

У меня есть 3 заказа на каждой странице, и я хотел бы, чтобы все заказы были автоматически пронумерованы, например:
Первая страница 1,2,3
Вторая страница 4,5,6

1 Ответов

Рейтинг:
0

przemo27ns

в виду

    @{ var i = (Model.StronaInfo.AktualnaStrona - 1) * Model.StronaInfo.PozycjeNaStrone;}

And table

<pre><td>
      @{i++;}
   <h4><span style="color: #23527c;">@i</span></h4>
</td>