Today when we wrote a program for online job portal. On that time i want to show the job detail from job table using single English alphabet letter. So first of all i bind Dropdownlist with the alphabet letters then also bind Gridview from selected DropdownList letter. For this type of query i need SQL LIKE operator because i want to search items from the table on the basis of selected letter. Bind the gridview with SqlDataSource with where clause.
<p>
Please Select any one letter from given list:</p>
<asp:DropDownList ID="Letters" DataSource='<%# Alphabet %>' runat="server" />
<asp:Button ID="Button1" runat="server" Text="Get Job List" />
<p>
<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" DataKeyNames="JobId" DataSourceID="SqlDataSource1">
<Columns>
<asp:BoundField DataField="JobId" HeaderText="JobId" InsertVisible="False" ReadOnly="True" SortExpression="JobId" />
<asp:BoundField DataField="JobName" HeaderText="JobName" SortExpression="JobName" />
<asp:BoundField DataField="Salary" HeaderText="Salary" SortExpression="Salary" />
<asp:HyperLinkField DataNavigateUrlFields="JobId" DataNavigateUrlFormatString="jobdetail.aspx?JobId={0}" HeaderText="Full Detail" Text="Details" />
</Columns>
</asp:GridView>
<asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:ConnectionString %>" SelectCommand="SELECT * FROM [AddJob] WHERE (JobName LIKE @JobName + '%')">
<SelectParameters>
<asp:ControlParameter ControlID="Letters" Name="JobName" PropertyName="SelectedValue" Type="String" />
</SelectParameters>
</asp:SqlDataSource>
Code Behind page
public partial class Bynamejobsearch : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
if (!Page.IsPostBack)
{
DataBind();
}
}
private List<char> _Alphabet;
protected List<char> Alphabet
{
get
{
if (_Alphabet == null)
{
_Alphabet = new List<char>();
for (int i = 65; i < 91; i++)
{
_Alphabet.Add(Convert.ToChar(i));
}
}
return _Alphabet;
}
}
}