2011-10-01 22 views
10

Aquí está mi archivo de página maestra. Necesito poner las variables de pAss strName, id, url, startime, etc. en la página de Child. Sé que también podemos escribir esta lógica en nuestra página hija. Pero, me gustaría acceder a esta variable de página maestra en la página secundaria solamente. Por favor recomiende. No puedo escribir esta lógica en cada método set/get. Al acceder a estas variables en la página secundaria, obtengo valores nulos. básicamente, aquí el maestro pageload llama cuando después de pageload niño llama sobreAcceso a las variables de la página maestra en la página secundaria en asp.net

1) PÁGINA PRINCIPAL NOMBRE: MyMasterPage

public partial class MyMasterPage: MasterPage 
{ 
    public string strName = string.Empty; 
    public string id= string.Empty; 
    public string url = string.Empty; 
    public string startTime = string.Empty; 
    public string endTime = string.Empty; 
    public string remoteUrl = string.empty; 

    public void Page_Load(object sender, EventArgs e) 
    { 

     DataTable dtEventTable = DataAccessManager.GetEventInfo(Connection); 

     if (dtEventTable.Rows.Count > 0) 
     { 
       strName = dtEventTable.Rows[0]["NAME"].ToString(); 
       id = dtEventTable.Rows[0]["ID"].ToString(); 
       url= dtEventTable.Rows[0]["URL"].ToString(); 
       starttime = dtEventTable.Rows[0]["starttime"].ToString(); 
       endtime = dtEventTable.Rows[0]["endtime"].ToString(); 
       remotelive = dtEventTable.Rows[0]["remotelive"].ToString(); 
       // assume that strName = "TCG",id=5, startime=20111001 etc. 
     } 
    } 
} 
+2

¿Qué sucede con este hilo? - http://stackoverflow.com/questions/7619342/access-master-page-variable-to-child-page – adatapost

Respuesta

-3

Puede usar Sesión [] objeto para llegar a las variables desde otra página.

+0

-1: no, no se puede. –

+0

¿por qué? ¿Puedes explicar por favor? Quiero aprender ... –

+0

Porque 'Session' no tiene nada que ver con las variables de otra página. –

0

Encontramos por Ramesh T en https://forums.asp.net/post/5557778.aspx

U mejor crear una referencia inflexible a ur página maestra mediante la adición de una directiva MasterType @ ur contenido (aspx) como se muestra a continuación

<%@ MasterType virtualPath="~/MasterPage1.master"%> 

y accede a sus miembros en su página aspx o código detrás (aspx.cs) como a continuación

var test1Text = Master.test1; 

De esta manera no es necesario echar.

Cuestiones relacionadas