And asp.net controls support databinding to any IEnumerable collection so we can easily bind the datagrid,reapter,datalist and dropdownlist with Linq query.
default.aspx
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head runat="server"> <title></title> </head> <body> <form id="form1" runat="server"> <div> <asp:GridView ID="grdCountryList" runat="server" AutoGenerateColumns="False" BackColor="LightGoldenrodYellow" BorderColor="Tan" BorderWidth="1px" CellPadding="2" ForeColor="Black" GridLines="None" AllowPaging="True"> <Columns> <asp:BoundField DataField="CountryId" HeaderText="CountryId" /> <asp:BoundField DataField="CountryName" HeaderText="Country Name" /> <asp:BoundField DataField="CountryCode" HeaderText="Country Code" /> </Columns> <FooterStyle BackColor="Tan" /> <PagerStyle BackColor="PaleGoldenrod" ForeColor="DarkSlateBlue" HorizontalAlign="Center" /> <SelectedRowStyle BackColor="DarkSlateBlue" ForeColor="GhostWhite" /> <HeaderStyle BackColor="Tan" Font-Bold="True" /> <AlternatingRowStyle BackColor="PaleGoldenrod" /> </asp:GridView> <br /> Linq Where country code lenght is less than 3 <br /> <asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" BackColor="LightGoldenrodYellow" BorderColor="Tan" BorderWidth="1px" CellPadding="2" ForeColor="Black" GridLines="None"> <Columns> <asp:BoundField DataField="CountryId" HeaderText="CountryId" /> <asp:BoundField DataField="CountryName" HeaderText="Country Name" /> <asp:BoundField DataField="CountryCode" HeaderText="Country Code" /> </Columns> <FooterStyle BackColor="Tan" /> <PagerStyle BackColor="PaleGoldenrod" ForeColor="DarkSlateBlue" HorizontalAlign="Center" /> <SelectedRowStyle BackColor="DarkSlateBlue" ForeColor="GhostWhite" /> <HeaderStyle BackColor="Tan" Font-Bold="True" /> <AlternatingRowStyle BackColor="PaleGoldenrod" /> </asp:GridView> <br /> Linq Where country id between 31 to 70 <br /> <asp:GridView ID="GridView2" runat="server" AutoGenerateColumns="False" BackColor="LightGoldenrodYellow" BorderColor="Tan" BorderWidth="1px" CellPadding="2" ForeColor="Black" GridLines="None"> <Columns> <asp:BoundField DataField="CountryId" HeaderText="CountryId" /> <asp:BoundField DataField="CountryName" HeaderText="Country Name" /> <asp:BoundField DataField="CountryCode" HeaderText="Country Code" /> </Columns> <FooterStyle BackColor="Tan" /> <PagerStyle BackColor="PaleGoldenrod" ForeColor="DarkSlateBlue" HorizontalAlign="Center" /> <SelectedRowStyle BackColor="DarkSlateBlue" ForeColor="GhostWhite" /> <HeaderStyle BackColor="Tan" Font-Bold="True" /> <AlternatingRowStyle BackColor="PaleGoldenrod" /> </asp:GridView> <br /> Linq Where country started from "A" <br /> <asp:GridView ID="GridView3" runat="server" AutoGenerateColumns="False" BackColor="LightGoldenrodYellow" BorderColor="Tan" BorderWidth="1px" CellPadding="2" ForeColor="Black" GridLines="None"> <Columns> <asp:BoundField DataField="CountryId" HeaderText="CountryId" /> <asp:BoundField DataField="CountryName" HeaderText="Country Name" /> <asp:BoundField DataField="CountryCode" HeaderText="Country Code" /> </Columns> <FooterStyle BackColor="Tan" /> <PagerStyle BackColor="PaleGoldenrod" ForeColor="DarkSlateBlue" HorizontalAlign="Center" /> <SelectedRowStyle BackColor="DarkSlateBlue" ForeColor="GhostWhite" /> <HeaderStyle BackColor="Tan" Font-Bold="True" /> <AlternatingRowStyle BackColor="PaleGoldenrod" /> </asp:GridView> <br /> Linq Where country with like query <br /> <asp:GridView ID="GridView4" runat="server" AutoGenerateColumns="False" BackColor="LightGoldenrodYellow" BorderColor="Tan" BorderWidth="1px" CellPadding="2" ForeColor="Black" GridLines="None"> <Columns> <asp:BoundField DataField="CountryId" HeaderText="CountryId" /> <asp:BoundField DataField="CountryName" HeaderText="Country Name" /> <asp:BoundField DataField="CountryCode" HeaderText="Country Code" /> </Columns> <FooterStyle BackColor="Tan" /> <PagerStyle BackColor="PaleGoldenrod" ForeColor="DarkSlateBlue" HorizontalAlign="Center" /> <SelectedRowStyle BackColor="DarkSlateBlue" ForeColor="GhostWhite" /> <HeaderStyle BackColor="Tan" Font-Bold="True" /> <AlternatingRowStyle BackColor="PaleGoldenrod" /> </asp:GridView> </div> </form> </body> </html>default.aspx.cs
using System;using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; public partial class _Default : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { BindGrid(); } } #region BIND GRID private void BindGrid() { List<CountryEntity> countryList = new List<CountryEntity>(); CountryPersistence objCountry = new CountryPersistence(); countryList = objCountry.GetCountryList(); //Simple binding of grid using LIST grdCountryList.DataSource = countryList; grdCountryList.DataBind(); //Now we will start Linq. It will fetch all the data where country code length is less than 3 GridView1.DataSource = from country in countryList where country.CountryCode.Length < 3 orderby country.CountryName select country; GridView1.DataBind(); //Where country ID between 31 to 70 GridView2.DataSource = from country in countryList where (country.CountryId >= 31 && country.CountryId <= 70) orderby country.CountryId select country; GridView2.DataBind(); //Where country name Starts with "A" GridView3.DataSource = from country in countryList where country.CountryName.StartsWith("A") select country; GridView3.DataBind(); //Where country name with like query GridView4.DataSource = from country in countryList where country.CountryName.Contains('z') orderby country.CountryName descending select country; GridView4.DataBind(); } #endregion }
Download Code
No comments:
Post a Comment