public async Task <ActionResult> IndexFor(string entity, int entityId, CancellationToken cancellationToken) { var links = new List <LinkCol>() { new LinkCol() { Url = $"/Administration/{_baseModel.Name}/{{id}}/EditFor/{entity}", UrlTitle = "Edit", ColTitle = "Actions" } }; if (_baseModel.LinkRows != null) { links.AddRange(_baseModel.LinkRows); } int pageSize = 10; var conditions = $"[{_baseModel.Name}].IsDeleted = 0"; if (!string.IsNullOrEmpty(entity)) { var attr = entity + "id"; conditions += $" and {attr}={entityId}"; } var filter = new FilterRequest(1, pageSize, "Id", "Asc", ""); var result = await _repository.AbstractAsync(conditions, filter); int totalNumberOfRows = await _repository.CountAsync(cancellationToken); var model = new DataTableComponentModel() { Name = _baseModel.Name, Title = _baseModel.PluralName + " list", TableId = _baseModel.Name.ToLower() + "-table", FetchUrl = $"{Url.Action("IndexFor", _baseModel.Name)}/{{entity}}/{{entityId}}/", CreateUrl = $"{Url.Action("CreateFor", _baseModel.Name)}/{{entity}}/{{entityId}}/", Entity = entity, EntityId = entityId, LinkRows = links, DataTable = (System.Data.DataTable)result.Model, PageCount = totalNumberOfRows / pageSize }; return(View("Base/_index", model)); }
public async Task <ActionResult> Index(CancellationToken cancellationToken) { var links = new List <LinkCol>() { new LinkCol() { Url = Url.Action("Edit", _baseModel.Name) + "/{id}", UrlTitle = "Edit", ColTitle = "Actions" } }; if (_baseModel.LinkRows != null) { links.AddRange(_baseModel.LinkRows); } int pageSize = 10; var filter = new FilterRequest(1, pageSize, "Id", "Asc", ""); var result = await _repository.AbstractAsync($"[{_baseModel.Name}].IsDeleted = 0", filter); int totalNumberOfRows = await _repository.CountAsync(cancellationToken); var model = new DataTableComponentModel() { Name = _baseModel.Name, Title = _baseModel.PluralName + " list", TableId = _baseModel.Name.ToLower() + "-table", FetchUrl = Url.Action("Index", _baseModel.Name), CreateUrl = Url.Action("Create", _baseModel.Name), LinkRows = links, Entity = _baseModel.Name, DataTable = (System.Data.DataTable)result.Model, PageCount = totalNumberOfRows / pageSize }; return(View("Base/_index", model)); }