modelos y validación en asp
TRANSCRIPT
-
En el marco de ASP.NET MVC, el modelo forma parte de la aplicacin que es
responsable de la aplicacin bsica o la lgica comercial. Los objetos de
modelo normalmente obtienen acceso a los datos desde un almacn
persistente, como SQL Server, y realizan la lgica comercial en esos datos.
Los modelos son especficos de la aplicacin y, por consiguiente, el marco de
ASP.NET MVC no impone ninguna restriccin sobre los tipos de objetos de
modelo que se pueden generar. Por ejemplo, puede utilizar objetos
DataReader o DataSet de ADO.NET o puede utilizar un conjunto
personalizado de objetos de dominio. Tambin puede utilizar una
combinacin de tipos de objeto para trabajar con datos.
El modelo no es una clase o interfaz determinada. Una clase forma parte del
modelo no porque implemente una determinada interfaz o derive de una
determinada clase base, sino debido al rol que la clase representa en la
aplicacin ASP.NET MVC y dnde la clase se encuentra en la estructura de
carpetas de la aplicacin. Una clase de modelo en una aplicacin ASP.NET
MVC no administra directamente la entrada del explorador ni genera la
salida HTML al explorador.
Definir el modelo
Los objetos del modelo son las partes de la aplicacin que implementan la
lgica del dominio, tambin conocida como la lgica comercial. La lgica
del dominio administra los datos que se pasan entre la base de datos y la
interfaz de usuario. Por ejemplo, en un sistema de inventario, el modelo
lleva un seguimiento de los elementos en almacenamiento y la lgica para
determinar si un artculo est en inventario. Adems, el modelo formara
parte de la aplicacin que actualiza la base de datos cuando un artculo se
vende y distribuye fuera del almacn. A menudo, el modelo tambin
almacena y recupera el estado modelo en una base de datos.
Cmo: Implementar validacin
remota de un cliente en MVC
Cmo: Validar los datos del
modelo mediante los atributos de
DataAnnotations
Tutorial: Utilizar plantillas de vista
de MVC con scaffolding de datos
Este tema an no ha recibido ninguna valoracin - Valorar este tema
Centros de desarrolladores
Windows
Windows Phone
Office
Windows Azure
Visual Studio
Ms...
Recursos de aprendizaje
Microsoft Virtual Academy
Channel 9
Puentes de interoperabilidad
MSDN Magazine
Comunidad
Foros
Blogs
CodePlex
Soporte tcnico
Autoasistencia
Otras opciones de soporte tcnico
Programas
BizSpark (para empresas nuevas)
DreamSpark
Faculty Connection
Microsoft Student
Te ha resultado til? S No
Espaa (Espaol) Boletn de noticias Privacidad y Cookies Trminos de uso
Marcas registradas 2014 Microsoft
Modelos y validacin en ASP.NET MVC http://msdn.microsoft.com/es-es/library/dd410405(d=printer,v=vs.100).aspx
1 de 6 10/03/2014 04:23 p.m.
-
Integrar el modelo y controlador
La carpeta recomendada para colocar las clases de modelo es la carpeta Models, proporcionada por Visual Studio en la
plantilla de la aplicacin ASP.NET MVC. Sin embargo, tambin es habitual colocar las clases modelo en un ensamblado
independiente, para que puedan reutilizarse estas clases en aplicaciones diferentes.
Utilizar las clases modelo de un controlador normalmente consiste en crear instancias de las clases modelo en acciones de
controlador, llamando a mtodos de los objetos modelo y extrayendo los datos adecuados de estos objetos para
mostrarlos en vistas. Este es el enfoque recomendado para implementar las acciones. Tambin mantiene la separacin
entre los elementos lgicos de la aplicacin, lo que facilita probar la lgica de la aplicacin sin tener que probarla
mediante la interfaz de usuario.
En el ejemplo siguiente se muestra una clase de modelo simple que representa un rol.
Enlazadores modelo
Un enlazador modelo en MVC proporciona una manera sencilla para asignar los valores de formulario expuestos a un tipo
.NET Framework y pasar el tipo a un mtodo de accin como un parmetro. Los enlazadores tambin ofrecen control
sobre la deserializacin de tipos que se pasan a los mtodos de accin. Los enlazadores modelo son como los
convertidores de tipos, porque pueden convertir las solicitudes HTTP en objetos que se pasan a un mtodo de accin. Sin
embargo, tambin tienen informacin sobre el contexto del controlador actual.
Un enlazador de modelos permite asociar una clase que implementa la interfaz IModelBinder mediante un parmetro del
mtodo de accin o mediante un tipo. La interfaz IModelBinder contiene un mtodo GetValue al que llama el marco para
recuperar el valor de un parmetro o tipo especificado. La clase DefaultModelBinder funciona con la mayora de los tipos
.NET Framework, incluidos matrices e IList, y los objetos IDictionary e ICollection.
Ejemplo de enlace modelo
En el ejemplo siguiente se muestra cmo implementar el enlace modelo simple. El modelo utilizado en este ejemplo es la
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
namespace MvcSimpleModelBinding.Models
{
public class Person
{
public int Id { get; set; }
public string Name { get; set; }
public int Age { get; set; }
public string Street { get; set; }
public string City { get; set; }
public string State { get; set; }
public int Zipcode { get; set; }
}
}
C# VB
Modelos y validacin en ASP.NET MVC http://msdn.microsoft.com/es-es/library/dd410405(d=printer,v=vs.100).aspx
2 de 6 10/03/2014 04:23 p.m.
-
clase Person que se defini en un ejemplo anterior. En este ejemplo se incluyen una clase PersonController y las vistas
Index, Create y Details. La clase PersonController crea una lista para almacenar los objetos Person. La vista Index
muestra las propiedades Id y Name de cada objeto Person de la lista. La vista Create permite al usuario escribir la
informacin para un rol. La vista Details muestra toda la informacin sobre un rol seleccionado.
En el siguiente ejemplo se muestra la clase PersonController:
En el ejemplo siguiente se muestra la vista Index:
public class PersonController : Controller
{
static List people = new List();
//
// GET: /Person/
public ActionResult Index()
{
return View(people);
}
//
// GET: /Person/Details/5
public ActionResult Details(Person person)
{
return View(person);
}
//
// GET: /Person/Create
public ActionResult Create()
{
return View();
}
//
// POST: /Person/Create
[AcceptVerbs(HttpVerbs.Post)]
public ActionResult Create(Person person)
{
if (!ModelState.IsValid)
{
return View("Create", person);
}
people.Add(person);
return RedirectToAction("Index");
}
}
C# VB
C# VB
Modelos y validacin en ASP.NET MVC http://msdn.microsoft.com/es-es/library/dd410405(d=printer,v=vs.100).aspx
3 de 6 10/03/2014 04:23 p.m.
-
En el ejemplo siguiente se muestra la vista Create:
Index
Id
Name
Create
-
En el siguiente ejemplo se muestra la vista Details:
Name:
Age:
Street:
City:
State:
Zipcode:
Details
Fields
Id:
C# VB
Modelos y validacin en ASP.NET MVC http://msdn.microsoft.com/es-es/library/dd410405(d=printer,v=vs.100).aspx
5 de 6 10/03/2014 04:23 p.m.
-
Adiciones de comunidad AGREGAR
Vea tambin
Otros recursos
ASP.NET MVC 2
Name:
Age:
Street:
City:
State:
Zipcode:
Modelos y validacin en ASP.NET MVC http://msdn.microsoft.com/es-es/library/dd410405(d=printer,v=vs.100).aspx
6 de 6 10/03/2014 04:23 p.m.