modelos y validación en asp

6
En el marco de ASP.NET MVC, el modelo forma parte de la aplicación que es responsable de la aplicación básica o la lógica comercial. Los objetos de modelo normalmente obtienen acceso a los datos desde un almacén persistente, como SQL Server, y realizan la lógica comercial en esos datos. Los modelos son específicos de la aplicación y, por consiguiente, el marco de ASP.NET MVC no impone ninguna restricción 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. También puede utilizar una combinación 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 aplicación ASP.NET MVC y dónde la clase se encuentra en la estructura de carpetas de la aplicación. Una clase de modelo en una aplicación 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 aplicación que implementan la lógica del dominio, también conocida como la lógica comercial. La lógica 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 lógica para determinar si un artículo está en inventario. Además, el modelo formaría parte de la aplicación que actualiza la base de datos cuando un artículo se vende y distribuye fuera del almacén. A menudo, el modelo también almacena y recupera el estado modelo en una base de datos. Cómo: Implementar validación remota de un cliente en MVC Cómo: Validar los datos del modelo mediante los atributos de DataAnnotations Tutorial: Utilizar plantillas de vista de MVC con scaffolding de datos Este tema aún no ha recibido ninguna valoración - Valorar este tema Centros de desarrolladores Windows Windows Phone Office Windows Azure Visual Studio Más... Recursos de aprendizaje Microsoft Virtual Academy Channel 9 Puentes de interoperabilidad MSDN Magazine Comunidad Foros Blogs CodePlex Soporte técnico Autoasistencia Otras opciones de soporte técnico Programas BizSpark (para empresas nuevas) DreamSpark Faculty Connection Microsoft Student ¿Te ha resultado útil? No España (Español) Boletín de noticias Privacidad y Cookies Términos de uso Marcas registradas © 2014 Microsoft Modelos y validación 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.

Upload: fernando-grille

Post on 19-Oct-2015

4 views

Category:

Documents


0 download

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.