Herramientas de usuario

Herramientas del sitio


sp:aspnet

Diferencias

Muestra las diferencias entre dos versiones de la página.

Enlace a la vista de comparación

Ambos lados, revisión anterior Revisión previa
Próxima revisión
Revisión previa
sp:aspnet [2009/08/20 16:59]
alfred
sp:aspnet [2020/05/09 09:25] (actual)
Línea 190: Línea 190:
 === GAC === === GAC ===
 Como toda aplicación en .NET, las creadas con aspnet pueden acceder a los ensamblados ubicados en la //Global Assembly Cache//​. ​ Como toda aplicación en .NET, las creadas con aspnet pueden acceder a los ensamblados ubicados en la //Global Assembly Cache//​. ​
 +
  
  
Línea 212: Línea 213:
 En el web.config podemos definir el tiempo que se mantiene la sesión activa (por defecto 20 minutos): En el web.config podemos definir el tiempo que se mantiene la sesión activa (por defecto 20 minutos):
 <code xml> <code xml>
-<sessionState +<configuration>​ 
-  timeout="​40"​ +   <​system.web>​ 
-/>+      <​sessionState ​timeout="​40"​ />
 </​code>​ </​code>​
 Si las cookies no están activas, la sesión puede ser tratada a partir de un identificador en la URL, para ello agregaremos lo siguiente al web.config: Si las cookies no están activas, la sesión puede ser tratada a partir de un identificador en la URL, para ello agregaremos lo siguiente al web.config:
Línea 349: Línea 350:
  
 ===== Algunos elementos básicos ===== ===== Algunos elementos básicos =====
 +
  
 ==== Response ==== ==== Response ====
Línea 357: Línea 359:
 </​code>​ </​code>​
  
- +=== Otros === 
- +  * ''​Clear'':​ Elimina lo que se ha escrito hasta ahora. 
- +  * ''​ContentType'':​ Indica el tipo de contenido que se envia para que según este sea tratado por el navegador.
- +
- +
- +
  
 ==== Clase Page ==== ==== Clase Page ====
Línea 526: Línea 524:
  
   * Esquema del ciclo de vida página: {{sp:​asp:​ct.png?​10|Esquema}}   * Esquema del ciclo de vida página: {{sp:​asp:​ct.png?​10|Esquema}}
 +
  
  
Línea 577: Línea 576:
 Response.Cookies.Clear();​ Response.Cookies.Clear();​
 </​code>​ </​code>​
 +Aunque si existen problemas para la eliminación:​ 
 +<code csharp>​ 
 +HttpCookie c1 = Request.Cookies["​userName"​];​ 
 +if (c1 != null) 
 +
 +    Request.Cookies.Remove("​userName"​);​ 
 +    c1.Expires = DateTime.Now.AddDays(-10);​ 
 +    c1.Value = null; 
 +    Response.SetCookie(c1);​ 
 +
 +</​code>​
 === Cookies con varios valores === === Cookies con varios valores ===
 Para crear una cookie con varios valores lo haremos como si fuese un array multidimensional. \\  Para crear una cookie con varios valores lo haremos como si fuese un array multidimensional. \\ 
Línea 771: Línea 780:
       Label.skin       Label.skin
 </​code>​ </​code>​
 +
  
  
Línea 834: Línea 844:
 AdRotator ad = (AdRotator)Master.FindControl("​MyAdRotator"​);​ AdRotator ad = (AdRotator)Master.FindControl("​MyAdRotator"​);​
 </​code>​ </​code>​
 +Para comunicar desde la MasterPage al contenido lo que haremos será lanzar un evento.
  
 === Notas === === Notas ===
   * La MasterPage inserta la el WebForm entre los eventos ''​PreInit''​ e ''​Init''​. ​   * La MasterPage inserta la el WebForm entre los eventos ''​PreInit''​ e ''​Init''​. ​
   * Podemos indicar la MasterPage por código, pero antes del evento ''​PreInit''​ mediante la propiedad ''​MasterPageFile''​ del objeto Page.   * Podemos indicar la MasterPage por código, pero antes del evento ''​PreInit''​ mediante la propiedad ''​MasterPageFile''​ del objeto Page.
-  * [[http://​odetocode.com/​Blogs/​scott/​archive/​2005/​07/​16/​1944.aspx]] 
   * Podemos indicar la MasterPage por defecto a partir del fichero de configuración:​   * Podemos indicar la MasterPage por defecto a partir del fichero de configuración:​
 <code xml> <code xml>
Línea 856: Línea 865:
  
 ===== WebServices ===== ===== WebServices =====
 +
 +
 +
  
  
Línea 895: Línea 907:
 } }
 </​code>​ </​code>​
 +  * En el ''​HttpContext''​ podemos recoger los parámetros mediante la ''​QueryString''​ (GET) o el ''​Form''​ (POST). ​
 +  * Si el controlador necesita leer la sesión del usuario que hace la petición necesitará implementar la interfaz ''​System.Web.SessionState.IReadOnlySessionState'',​ si además necesitase guardarla implementaría la ''​IRequiresSessionState''​.
  
 ===== Notas ===== ===== Notas =====
 +
 +
 ==== Como... ==== ==== Como... ====
 === Agregar una librería === === Agregar una librería ===
Línea 906: Línea 922:
 <code xml> <code xml>
 <​scs:​ScsComboBox ID="​dest"​ runat="​server"​ EnableDefaultItem="​false"​ Width="​100px"/>​ <​scs:​ScsComboBox ID="​dest"​ runat="​server"​ EnableDefaultItem="​false"​ Width="​100px"/>​
 +</​code>​
 +=== Saber ubicación de la aplicación en disco ===
 +Como lo hacemos en cualquier aplicación .NET simplemente tendríamos que consultar:
 +<code csharp>
 +string bdir = System.AppDomain.CurrentDomain.BaseDirectory;​
 +</​code>​
 +=== Acceder al Request\Response sin tener acceso a la clase Page ===
 +<code csharp>
 +HttpContext.Current.Request.MapPath("​~/"​);​
 </​code>​ </​code>​
  
sp/aspnet.1250787575.txt.gz · Última modificación: 2020/05/09 09:24 (editor externo)