Vistas Parciales
Vistas Parciales
Vistas Parciales
[email protected]
Areas
Areas
• Si la aplicación se hace grande, es mas
complicado manejar la estructura de
archivos.
• Las Areas nos permiten organizar diferentes
módulos de una aplicación Web basados en
su funcionalidad.
• Permiten tener la estructura de MVC para
cada módulo
Areas
Creando Areas
Estructura MVC
AreaRegistration
Areas
Creando Areas
Creando Areas
Creando Areas
routes.MapRoute(
name: "Default",
url: "{controller}/{action}/{id}",
defaults: new { controller = "Home", action = "Index",
id = UrlParameter.Optional },
namespaces: new[] { "EjemploAreas.Controllers" }
);
Areas
Creando Areas
<li>@Html.ActionLink("Ver Catalogo",
"Index",
"Home",
new { area="Catalogo"},
null)
</li>
Areas
Creando Areas
<li>@Html.ActionLink("Ver Catalogo",
"Index",
"Home",
new { area="Catalogo",
Usurio = "Juanito" },
null)
</li>
Areas
<system.web.webPages.razor>
<host factoryType="System…….
<pages pageBaseType="System.Web.Mvc.WebViewPage">
<namespaces>
<add namespace="System.Web.Mvc" />
<add namespace="System.Web.Mvc.Ajax" />
<add namespace="System.Web.Mvc.Html" />
<add namespace="System.Web.Optimization"/>
<add namespace="System.Web.Routing" />
</namespaces>
</pages>
</system.web.webPages.razor>
Manejo de estado
3. Entre peticiones:
Cross-page posting, Items collection
Manejo de Sesiones y aplicación
Application State
Estado compartido por todos los usuarios de
la aplicación
Usar cuando obtener un valor que se
requiere siempre, consume demasiado en
obtenerlo para cada petición.
Se perderán los datos si en server se
reinicia o detiene.
Manejo de Sesiones y aplicación
Application State
Se almacena en una instancia de
HttpApplicationState
Accedemos por la propiedad Application
HttpContext.Current.Application["Nombre"] = "Pepe";
Manejo de Sesiones y aplicación
Application State
Para actualizar Application debemos poner
un bloqueo
Application.Lock();
Application["clicks"] = ((int)Application["clicks"]) + 1;
Application.UnLock();
Manejo de Sesiones y aplicación
Session State
Son datos específicos para cada usuario
Los datos se pierden si la sesión del usuario
termina.
Se almacena en el servidor, pero puede
configurarse para almacenarse en cookies, en
otro state server o en una Base de Datos
Manejo de Sesiones y aplicación
Session State
Accedemos mediante la propiedad Session
if (Session["ultimaVisita"] != null)
{
Label1.Text =
((DateTime)Session["ultimaVisita"]).ToString();
}
else
{
Label1.Text = "Ultima visita es desconocida";
}
Session["ultimaVisita"] = DateTime.Now;
Cookies
Se almacenan en el cliente
Se pueden mantener en archivos disponibles
en el tiempo en distintas peticiones desde la
misma máquina.
No se mantiene si el usuario se conecta desde
otra máquina o dispositivo
Los usuarios pueden eliminar los cookies en
cualquier momento
Cookies
Crear un Cookie:
Acceder a un Cookie:
var id = Request.Cookies["userId"].Value;
Se pasan en el url:
http://www.miSitio.com/test.aspx?nombre=ju
anito&edad=21
Acceder al valor:
Label1.Text = Request["nombre"];