2009-09-30 8 views
7

La colección de controles no se puede modificar porque el control contiene bloques de código (es decir, <% ...%>).¿Cómo accedo al valor de una variable C# en una página .aspx?

que necesitamos para acceder a la variable de C# en la página .aspx en el momento en que tenemos un problema

favor nos guíe?

+0

¿Puede proporcionarnos más información sobre su situación específica? esto es un poco vago – Chuck

Respuesta

20

Sería de gran ayuda si usted dio más detalles acerca de lo que estás tratando de hacer, sin embargo se puede probar esto:

En primer lugar hacer cualquier variable que desea tener acceso en su aspxprotected marcado.

Luego, en el método Page_Load, llaman DataBind();

Luego, en su margen de beneficio se puede hacer esto:

<%# VariableName %> 

El "<%=" secuencia sólo se puede utilizar dentro de ciertos contextos en los controles de servidor. La secuencia "<%#" es para controles DataBound y se puede usar en cualquier contexto en el marcado de página ASPX. Llamar al DataBind(); le permite usar esto (casi) en cualquier lugar de la página.

+0

im asignando 'regression = (Session [" Regression "]). ToString();' en el archivo .aspx.cs y luego utilizándolo en el archivo .aspx como SelectCommand = "SELECT [issue_oid], [issue_num], [regression] , [estado], [tested_by], [tested_on], [patch_name], [arrived_on], [previous_info], [comment], [is_duplicate] FROM [itt_monthly_patch_issue_list] donde status = 'No probado' y 'regression =' < % # regression%> '"' pero para mí no funciona.pls sugiérame cómo usarlo ... – picnic4u

+0

@ picnic4u Por favor, cree una nueva pregunta para que pueda responder a su pregunta. No tengo suficiente información para resolver su problema a través de comentarios y estaría fuera de tema responder en comentarios en la pregunta de este usuario. –

+0

por favor mira en mi código- he hecho una pregunta aquí http://stackoverflow.com/questions/11445620/how-can-i-access-string-variable-value-of-aspx-cs-file-in- aspx-file – picnic4u

0

Necesitará algo en la página que pueda contener datos. Enlace ese objeto a su fuente de datos y luego puede hacer una "evaluación" en el .aspx.

Por ejemplo, si ha ligado su control (presumiblemente en el código subyacente) a un objeto que tiene una propiedad llamada "autor", se puede visualizar de la siguiente manera:

<asp:TableRow ID="trwMsgAuthor" runat="server"> 
    <asp:TableCell ID="TableCell2" runat="server" Width="1in">Author:</asp:TableCell> 
    <asp:TableCell runat="server" ID="celMsgAuthor"><%#Eval("Author")%></asp:TableCell> 
</asp:TableRow> 

El La tabla en este ejemplo es parte de un control de acordeón donde la propiedad ".DataSource" se estableció en una lista genérica de objetos, de los cuales "Autor" fue una de las propiedades.

0

Declare el código C# detrás de la variable, ya sea pública o protegida, y luego envíelos en el bloque <% %>. p. <%= strMyCodebehindvariable%> o <%# strMyCodebehindvariable%>. Si está utilizando la segunda opción, debe llamar al método DataBind() en la carga de la página.

0

En su ASPX, pero un control <asp:literal runat=server> alrededor de su código <%=x %>.

Cuestiones relacionadas