Q:

Accessing DataSet Returned from my DAL

I am attempting to use ASP.Net and generate a Database Access Layer for re-usability.  I am using the below to pass a stored procedure name to my DAL and execute the stored procedure, then return the results as a dataset.
However, in the calling class, I am getting the error

the name ds does not exist in the current context

What should I alter so that I can access the returned dataset in my calling class?
class DatabaseAccessLayer
{
    public DataSet RunSQLServerStoredProcedure(string uspName)
    {
        using (SqlConnection con = new SqlConnection(essToUse))
        {
            SqlCommand sqlComm = new SqlCommand(uspName, con);
            sqlComm.CommandType = CommandType.StoredProcedure;

            SqlDataAdapter da = new SqlDataAdapter();
            da.SelectCommand = sqlComm;

            DataSet ds = new DataSet();
            da.Fill(ds);
            return ds;
        }
    }
}

class Gopher
{
    DatabaseAccessLayer dal;

    public void PopulateHootersStores()
    {
        DataRow dr;
        dal.RunSQLServerStoredProcedure("ReturnStoredProc");

        DataTable dt = ds.Tables[0];

        dr = dt.NewRow();
        dr.ItemArray = new object[] { 0, "--Select A Store--" };
        dt.Rows.InsertAt(dr, 0);

        //Adding in All option
        dr = dt.NewRow();
        dr.ItemArray = new object[] { 1, "All" };
        dt.Rows.InsertAt(dr, 1);

        cboTest.ValueMember = "StoreNumber";

        cboTest.DisplayMember = "StoreName";
        cboTest.DataSource = dt;

        con.Close();
    }
}

A:

At a quick glance the following errors stand out.

Your dal variable isn't declared instance, since you didn't define static you need to provide a new operator to create an instance.
You call ds but don't have it defined in your gopher class, thus it doesn't exists or have a definition.
Your data access layer class method returns a data set, but you instantiate without storing the returned value.  Example:
var set = new DataAccessLayer().RunSQLServerStoredProcedure(...);

The variable set will now hold your returned data set from the method, you also define your data access layer.  

