Karthik_Mahalingam
использовать Сессия [^] чтобы получить / установить значения из одной формы в другую (мастер сайта)
Содержание страницы cs:
public partial class WebForm1 : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
DataTable dt = new DataTable ();
dt.Columns.Add("ID");
for (int i = 0; i < 5; i++)
{
dt.Rows.Add(i);
}
Session["Test"] = dt; // storing the datatable object in session
}
}
Мастер сайта cspublic partial class Site1 : System.Web.UI.MasterPage
{
protected void Page_Load(object sender, EventArgs e)
{
DataTable dt = (DataTable)Session["Test"]; // Read the datatable from session
}
}
Richard Deeming
Не очень хорошая идея. Нет никакой гарантии, в каком порядке будут происходить события, поэтому Page_Load
в вашей главной странице может работать до Page_Load
на Вашей странице контента.
Вы также сохраняете (потенциально довольно большой) объект за пределами срока действия запроса, даже если он не используется после обработки запроса.
Любой HttpContext.Предметы[^] или Страница.Предметы[^] было бы лучшим местом для хранения данных, если бы вы могли убедиться, что они были созданы до того, как к ним был получен доступ.
Лучше создать строго типизированную главную страницу и передать данные непосредственно методу на ней.