Solved

Pass Session Variables to SQL Query to GridView

Posted on 2011-09-07
4
465 Views
Last Modified: 2012-05-12
Experts,

Having some difficulties with this. I am passing session variables from 3 dropdownlists on one page to another page. On the 2nd page, I am grabbing the variables  and trying to use them in a SQL Query to return results to a GridView. Could really use some help on this.


public partial class results : System.Web.UI.Page
    {
        SqlConnection con = new SqlConnection(WebConfigurationManager.ConnectionStrings["MyConnect"].ConnectionString);
        protected void Page_Load(object sender, EventArgs e)
        {
            
                string ssState = (string)(Session["ssState"]);
                string ssCity = (string)(Session["ssCity"]);                
                string ssType = (string)(Session["ssType"]);

                con.Open();
                SqlCommand com = new SqlCommand("SELECT * FROM dbo.tbl_Property WHERE Prop_State=@ssState AND Prop_City=@ssCity AND Prop_Type=@ssType", con);
                com.Parameters.AddWithValue("@ssState", ssState);
                com.Parameters.AddWithValue("@ssCity", ssCity);                
                com.Parameters.AddWithValue("@ssType", ssType);

                SqlDataAdapter myAdapter = new SqlDataAdapter(com);
                DataSet dSet = new DataSet();
                myAdapter.Fill(dSet);   

                
                
                myGrid.DataSource = dSet;
                myGrid.DataBind();

                con.Close();
            
        }
    }

Open in new window

0
Comment
Question by:Shaggy1
  • 2
  • 2
4 Comments
 
LVL 28

Accepted Solution

by:
strickdd earned 500 total points
ID: 36496504
Are you sure you have values in the session variables when you get to this section of code? Debug and step through it to be sure. If you do, take those values and put them in your SQL string and execute that string directly against the SQL server to make sure that you are getting rows back.
0
 

Author Comment

by:Shaggy1
ID: 36496547
Thanks for the help. It seems as though I am getting the values. To test it, i used a label to make sure i was getting the values. I had seen that programmers have been placing the values in the SQL string, but wasn't sure if that was the safest way to do it.
Thanks again!
0
 
LVL 28

Expert Comment

by:strickdd
ID: 36496985
The way you have the SQL - parameterized - is perfect. I'm just suggesting to manaully add the values to the SQL so you can run it in management studio and make sure results are returned. Don't shy away from parameterization!
0
 

Author Closing Comment

by:Shaggy1
ID: 36497259
Well, looks like it was one of the variables...i just removed one of them, and the Grid filled up.
Thanks for the help!
0

Featured Post

Efficient way to get backups off site to Azure

This user guide provides instructions on how to deploy and configure both a StoneFly Scale Out NAS Enterprise Cloud Drive virtual machine and Veeam Cloud Connect in the Microsoft Azure Cloud.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

In this article I will describe the Backup & Restore method as one possible migration process and I will add the extra tasks needed for an upgrade when and where is applied so it will cover all.
Ever needed a SQL 2008 Database replicated/mirrored/log shipped on another server but you can't take the downtime inflicted by initial snapshot or disconnect while T-logs are restored or mirror applied? You can use SQL Server Initialize from Backup…
This Micro Tutorial will give you a basic overview how to record your screen with Microsoft Expression Encoder. This program is still free and open for the public to download. This will be demonstrated using Microsoft Expression Encoder 4.
This video shows how to quickly and easily add an email signature for all users on Exchange 2016. The resulting signature is applied on a server level by Exchange Online. The email signature template has been downloaded from: www.mail-signatures…

776 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question