Mega Code Archive

 
Categories / ASP.Net / ADO Database
 

Change parameters of SqlDataSource in your own code

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="SqlDataSourceLimits" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"                 "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" > <head runat="server">     <title>Untitled Page</title> </head> <body>     <form id="form1" runat="server">     <div>         <asp:SqlDataSource ID="sourceEmployees"                             runat="server"                             ProviderName="System.Data.SqlClient"                             ConnectionString="<%$ ConnectionStrings:Northwind %>"                             SelectCommand="SELECT EmployeeID, FirstName, LastName, Title, City FROM Employees WHERE City=@City"                             OnSelecting="sourceEmployees_Selecting">             <SelectParameters>                 <asp:ControlParameter ControlID="lstCities"                                        Name="City"                                        PropertyName="SelectedValue" />             </SelectParameters>         </asp:SqlDataSource>         <asp:SqlDataSource ID="sourceEmployeeCities"                             runat="server"                             ProviderName="System.Data.SqlClient"                             ConnectionString="<%$ ConnectionStrings:Northwind %>"                             SelectCommand="SELECT DISTINCT City FROM Employees">         </asp:SqlDataSource>         <asp:DropDownList ID="lstCities"                            runat="server"                           DataTextField="City"                            Width="205px"                            AutoPostBack="True" >         </asp:DropDownList><br />         <br />         <asp:GridView ID="GridView1"                        runat="server"                        DataSourceID="sourceEmployees"                        CellPadding="4"                       Font-Names="Verdana"                        Font-Size="Small"                        ForeColor="Navy"                        GridLines="None"                        AutoGenerateColumns="False"                        DataKeyNames="EmployeeID">             <FooterStyle BackColor="#990000" Font-Bold="True" ForeColor="White" />             <RowStyle BackColor="#FFFBD6" ForeColor="Navy" />             <PagerStyle BackColor="#FFCC66" ForeColor="Navy" HorizontalAlign="Center" />             <SelectedRowStyle BackColor="#FFCC66" Font-Bold="True" ForeColor="Navy" />             <HeaderStyle BackColor="#990000" Font-Bold="True" ForeColor="White" />             <AlternatingRowStyle BackColor="White" />             <Columns>                 <asp:BoundField DataField="EmployeeID" HeaderText="EmployeeID" InsertVisible="False"                     ReadOnly="True" SortExpression="EmployeeID" />                 <asp:BoundField DataField="FirstName" HeaderText="FirstName" SortExpression="FirstName" />                 <asp:BoundField DataField="LastName" HeaderText="LastName" SortExpression="LastName" />                 <asp:BoundField DataField="Title" HeaderText="Title" SortExpression="Title" />                 <asp:BoundField DataField="City" HeaderText="City" SortExpression="City" />             </Columns>         </asp:GridView>          </div>     </form> </body> </html> File: Default.aspx.cs using System; using System.Data; using System.Configuration; using System.Collections; using System.Web; using System.Web.Security; using System.Web.UI; using System.Web.UI.WebControls; using System.Web.UI.WebControls.WebParts; using System.Web.UI.HtmlControls; using System.Data.SqlClient; public partial class SqlDataSourceLimits : System.Web.UI.Page {     protected void Page_Load(object sender, EventArgs e)     {     if (!Page.IsPostBack)     {       lstCities.DataSource = sourceEmployeeCities.Select(DataSourceSelectArguments.Empty);       lstCities.DataBind();       lstCities.Items.Insert(0, "(Choose a City)");       lstCities.Items.Insert(1, "(All Cities)");       lstCities.SelectedIndex = 0;     }     }   protected void sourceEmployees_Selecting(object sender, SqlDataSourceSelectingEventArgs e)   {     if ((string)e.Command.Parameters["@City"].Value == "(Choose a City)")     {       e.Cancel = true;     }     else if ((string)e.Command.Parameters["@City"].Value == "(All Cities)")     {       e.Command.CommandText = "SELECT * FROM Employees";     }   } } File: Web.config <?xml version="1.0"?> <configuration xmlns="http://schemas.microsoft.com/.NetConfiguration/v2.0">   <appSettings/>   <connectionStrings>     <add name="Northwind" connectionString="Data Source=localhost;Initial Catalog=Northwind;Integrated Security=SSPI"/>   </connectionStrings>    </configuration>