cómo usar combinaciones de tablas en la búsqueda de ordenación, paginación MVC

MOHAN RAJ P

En mvc, controlador dentro de una tabla que se usa para buscar, ordenar y paginar. En esta sintaxis;

var cus = db.cus_general.AsQueryable();

cus = from x in db.cus_general
    select x;

db.xxxxx => se refiere a una tabla de la base de datos; pero no use tablas múltiples.

en la página de vista: Soy creado externamente una clase de modelo. el nombre es el total de clientes que contiene;

pero no puedo implementar la búsqueda, ordenando entre este código

public ActionResult CustomerDetails(string search, string sort, string filter, int? page_no)
{
    ViewBag.CurrentSortOrder = sort;
    ViewBag.NameSortParam = sort == "name" ? "name_desc" : "name";
    if (search != null)
    {
        page_no = 1;
    }
    else
    {
        search = filter;
    }

    ViewBag.FilterValue = search;

    var cus = db.cus_general.AsQueryable();

    cus = from x in db.cus_general
        select x;

    if (!String.IsNullOrEmpty(search))
    {
        cus = cus.Where(x =>
            (x.cus_name.Contains(search)) ||
            (x.cus_type.Contains(search)) ||
            (x.cus_contact_detail.Contains(search))
        );
    }

    switch (sort)
    {
        case "name_desc":
            cus = cus.OrderByDescending(x => x.cus_name);
            break;
        case "name":
            cus = cus.OrderBy(x => x.cus_name);
            break;
        case "search":
            cus = cus.OrderBy(x => x.cus_id);
            break;
        default:
            cus = cus.OrderBy(x => x.cus_id);
            break;
    }

    int Size_Of_Page = 5;
    int No_Of_Page = (page_no ?? 1);
    return View(cus.ToPagedList(No_Of_Page, Size_Of_Page)); 
}
MOHAN RAJ P

controlador:

public ActionResult VendorDetails(string search,string sort,string filter,int? page_no)
    {
        ViewBag.CurrentSortOrder = sort;    
        ViewBag.NameSortParam = sort == "name" ? "name_desc" : "name";
        if (search != null)
        {
            page_no = 1;
        }
        else
        {
            search = filter;
        }

        ViewBag.FilterValue = search;
        var   ven = (from x in db.vendordetails
                   join y in db.ven_tax_information on x.ven_account equals y.ven_id
                    select new vendortotal()
                    {
                            ven_account=x.ven_account,
                             ven_type=x.ven_type,
                            ven_name =x.ven_name,
                            ven_group=x.ven_group,
                            city  =x.city,
                            state=x.state,
                            country=x.country,
                            zipcode=x.zipcode,
                            contactname=x.contactname,
                            designation=x.designation,
                            contactno =x.contactno,
                            email=x.email,
                            tax_group =y.tax_group
                        });
        if (!String.IsNullOrEmpty(search))
            {
                ven = ven.Where(x =>
                    (x.ven_name.Contains(search)) ||
                    (x.ven_type.Contains(search)) ||
                    (x.contactname.Contains(search))
                    );     
            }
      switch (sort)
            {
                case "name_desc":
                ven = ven.OrderByDescending(x => x.ven_name);
                    break;
                case "name":
                    ven = ven.OrderBy(x => x.ven_name);
                    break;
                case "search":
                    ven = ven.OrderBy(x => x.ven_account);
                    break;
                default:
                    ven = ven.OrderBy(x => x.ven_account);
                    break;
            }
            int Size_Of_Page = 5;
                int No_Of_Page = (page_no ?? 1);
                return View(ven.ToPagedList(No_Of_Page, Size_Of_Page));
    }

Clase de modelo (modelo personalizado) dos valores de tabla en una clase de modelo personalizado

public class vendortotal
    {
        public int ven_account { get; set; }
        public string ven_type { get; set; }
        public string ven_name { get; set; }
        public string ven_group { get; set; }
        public string ven_add1 { get; set; }
        public string ven_add2 { get; set; }
        public string city { get; set; }
        public string state { get; set; }
        public string country { get; set; }
        public int zipcode { get; set; }
        public string contactname { get; set; }
        public string designation { get; set; }
        public string contactno { get; set; }
        public string email { get; set; }

        public int tax_reg_num { get; set; }
        public string tax_group { get; set; }
        public string tax_code { get; set; }
        public string term_exempt { get; set; }
        public int pan { get; set; }
        public string tin_tan { get; set; }

    }

vista

@model IPagedList<Profitmain.Models.vendortotal>
@using PagedList.Mvc;
@using PagedList;


<table id="datatable-tabletools" class="table table-striped table-bordered" border="1" cellspacing="0" width="100">

                                                                                @if (Model.Count() == 0) 

                                                                                    {
                                                                                    <tr>
                                                                                        <td colspan="4">no rows match search criteria</td>
                                                                                    </tr>
                                                                                    }
                                                                                    else
                                                                                    {
                                                                            <tr>
                                                                                <th>Vendor Account</th>
                                                                                <th>Vendor Type</th>

                                                                                <th>
                                                                                    Vendor Details
                                                                                    <a href='@Url.Action("vendordetails", new { sort = ViewBag.NameSortParam, search = Request["search"] })'>
                                                                                        <img src='@Url.Content("/monarch/assets/image-resources/arrows.jpg")' width="12" height="12" />
                                                                                    </a>
                                                                                </th>
                                                                                <th>Group</th>
                                                                                <th>City</th>
                                                                                <th>State</th>
                                                                                <th>Country</th>
                                                                                <th>ZipCode</th>

                                                                                <th>Contact Name</th>
                                                                                <th>Designation</th>
                                                                                <th>Contact No</th>
                                                                                <th>Email</th>
                                                                                <th>tax group</th>
                                                                                <th>Action</th>
                                                                            </tr>
                                                                                        foreach (var item in Model)
                                                                                        {
                                                                            <tr>
                                                                                <td>
                                                                                    @Html.DisplayFor(modelItem => item.ven_account)
                                                                                </td>
                                                                                <td>
                                                                                    @Html.DisplayFor(modelItem => item.ven_type)
                                                                                </td>
                                                                                <td>
                                                                                    @Html.DisplayFor(modelItem => item.ven_name)

                                                                                </td>
                                                                                <td>
                                                                                    @Html.DisplayFor(modelItem => item.ven_group)
                                                                                </td>
                                                                                <td>
                                                                                    @Html.DisplayFor(modelItem => item.city)
                                                                                </td>
                                                                                <td>
                                                                                    @Html.DisplayFor(modelItem => item.state)
                                                                                </td>
                                                                                <td>
                                                                                    @Html.DisplayFor(modelItem => item.country)
                                                                                </td>
                                                                                <td>
                                                                                    @Html.DisplayFor(modelItem => item.zipcode)
                                                                                </td>
                                                                                <td>
                                                                                    @Html.DisplayFor(modelItem => item.contactname)
                                                                                </td>
                                                                                <td>
                                                                                    @Html.DisplayFor(modelItem => item.designation)
                                                                                </td>
                                                                                <td>
                                                                                    @Html.DisplayFor(modelItem => item.contactno)
                                                                                </td>
                                                                                <td>
                                                                                    @Html.DisplayFor(modelItem => item.email)
                                                                                </td>
                                                                                <td>
                                                                                    @Html.DisplayFor(modelItem => item.tax_group)
                                                                                </td>
                                                                                <td>
                                                                                    @Html.ActionLink("Edit", "Edit", new { id = item.ven_account }) |
                                                                                    @Html.ActionLink("Details", "Details", new { id = item.ven_account }) |
                                                                                    @Html.ActionLink("Delete", "Delete", new { id = item.ven_account })
                                                                                </td>
                                                                            </tr>
                                                                                }}
</table>

Este artículo se recopila de Internet, indique la fuente cuando se vuelva a imprimir.

En caso de infracción, por favor [email protected] Eliminar

Editado en
0

Déjame decir algunas palabras

0Comentarios
Iniciar sesiónRevisión de participación posterior

Artículos relacionados

cómo mostrar la paginación y la búsqueda y el botón en tablas de datos

Cómo usar la tubería de búsqueda con paginación en ng para usar angular 4

Cómo usar la paginación de facebook en ios

La búsqueda y ordenación de tablas de datos no funciona para datos agregados dinámicamente

La función de ordenación, paginación y búsqueda de jQuery Bootgrid no funciona

¿Cómo usar la función de búsqueda por "int" en ASP.NET Core MVC?

Uso de la función COUNT en combinaciones de tablas

Cómo usar la opción de búsqueda en la salida HTML de Powershell

Cómo usar la opción de búsqueda en la salida HTML de Powershell

Cómo usar la selección en los proveedores de sugerencias de búsqueda de Azure

¿Cómo usar Container en la operación de búsqueda en la biblioteca Jemmy?

Cómo usar 'predecir' en el momento de la búsqueda aleatoria para todas las combinaciones de parámetros diferentes

Cómo implementar tablas de datos del lado del servidor Paginación / búsqueda / clasificación en ASP.net Core

Cómo implementar tablas de datos del lado del servidor Paginación / búsqueda / clasificación en ASP.net Core

Problemas para implementar la ordenación y la paginación en la API QueryOver de NHibernate para consultas que usan combinaciones y proyecciones

usar tablas de unión frente a una búsqueda unidireccional

¿Cómo agregar paginación en mi página de resultados de búsqueda?

Cómo agregar paginación en los resultados de búsqueda

¿Cómo puedo agregar paginación al resultado de la búsqueda?

mongodb aplicar ordenación a los resultados de la búsqueda

mongodb aplicar ordenación a los resultados de la búsqueda

¿Cómo usar la paginación en una tabla de datos en Element UI?

Complejidad temporal de la operación de búsqueda en tablas hash utilizando encadenamiento separado

Agregar filtrado, búsqueda y paginación a la tabla de transmisión en tiempo real

la paginación de laravel no funciona con la búsqueda

La búsqueda y la paginación de php no funcionan

la paginación de laravel no funciona con la búsqueda

Cómo usar la paginación en el marco de Play

JQuery Datatable: botón Atrás sin borrar la condición de búsqueda y la paginación en MVC razor

TOP Lista

CalienteEtiquetas

Archivo