В сущности, в ASP.NET для сохранения чего-то от страницы к странице вам нужно использовать состояние сеанса и поместить туда свой объект, чтобы вы могли попробовать что-то вроде этого:
Страница 1:
List<SqlParameter> newcollect = new List<SqlParameter>();
newcollect.Add(new SqlParameter("@Switch", 1));
Session["SqlParameters"] = newcollect;
Page 2 (класс соединения):
public void OpenReader(string sql)
{
Conn = new SqlConnection(strConn);
Conn.Open();
Command = new SqlCommand(sql,Conn);
List<SqlParameter> coll = null;
if(Session["SqlParameters"] != null)
{
coll = (List<SqlParameter>)Session["SqlParameters"];
}
Command.Parameters.AddRange(coll.ToArray());
Command.CommandTimeout = 300;
// executes sql and fills data reader with data
DR = Command.ExecuteReader();
}
Это будет работать - , если у вас включено состояние сеансана вашем сайте ASP.NET.Это будет не работать, если ваш сайт по какой-то причине не может использовать память состояния сеанса (например, если вы находитесь на веб-ферме и не можете использовать SQL Server для состояния сеанса)