ASP.NET MVC Model绑定(六)

ASP.NET MVC Model绑定(六)

前言

前面的篇幅对于IValueProvider的使用做个基础的演示样例解说,可是没并没有对 IValueProvider类型的实现做具体的介绍,然而MVC框架中给我们提供了几种默认的实现类型,在本篇中将会对NameValueCollectionValueProvider类型做一个演示样例解说,了解一下MVC框架给我们提供的值提供程序是怎么处理Model值的。

 

Model绑定

  • IModelBinder、自己定义Model绑定器简单实现
  • Model绑定器在MVC框架中的位置
  • MVC中的默认Model绑定器生成过程
  • IModelBinderProvider的简单应用
  • IValueProvider在MVC框架中生成的位置以及过程
  • IValueProvider的应用场景
  • IValueProvider的实现之NameValueCollectionValueProvider

IValueProvider的实现之NameValueCollectionValueProvider

前面的一篇中我们对IValueProvider的使用作了演示样例演示,那是一个从控制器方法到视图的一个绑定的过程。大家有没有想过在视图里的数据是怎么在绑定回控制器部分的。视图中的数据类型的不同相应的使用绑定的类型也不同,本篇就为大家演示样例一个自己定义类型的绑定。

代码1-1

public class Customer
    {
        [HiddenInput(DisplayValue=true)]
        public string CustomerID { get; set; }

        [Display(Name="姓名")]
        public string Name { get; set; }

        [DataType(DataType.Date)]
        [Display(Name="注冊日期")]
        public DateTime RegistrationDate{ get; set; }

        [UIHint("Address")]
        public Address Address { get; set; } 
    }
    public class Address
    {
        [Display(Name="地址名称")]
        [MyCustomMetadataAware]
        public string AddressName { get; set; }
    }
原文地址:https://www.cnblogs.com/yangykaifa/p/7208348.html