MVC中的模型

 

  • 为MVC Music Store 建模
    • 建模代码:
      public class Album
          {
              public virtual int AlbumId { get; set; }
              public virtual int GenreId { get; set; }
              public virtual int ArtistId { get; set; }
              public virtual string Title { get; set; }
              public virtual decimal Price { get; set; }
              public virtual string AlbumArtUrl { get; set; }
              public virtual int Genre { get; set; }
              public virtual int Artist { get; set; }
          }

       

  • 为商店管理器构造基架
    •   基架(scaffolding): 为应用程序的增删改查功能生成所需的样板代码. 

    在模型类的基础上添加控制器, 即可生成控制器, 数据上下文, 视图等. 

  • 编辑专辑
    •   创建编辑专辑的资源
      •   模型和视图模型终极版 :
        public class AlbumEditViewModel
        {
              public Album AlbumToEdit{get;set;} 
             public  SelectList Genres {get;set;}
              public SelectList Artists{get;set;}  
        
        }    

         

      • Edit视图 
        @using (Html.BeginForm()){
              @Html.DropDownList("GenreId",String.Empty)
              @Html.EditorFor(model =>model.Title)
              @Html.EditorFor(model => model.Price)
            <P>
               <input type="submit" value="Save" />
        </P>
          
        }    

         

  • 模型绑定
    •   当操作带有一个参数时,MVC运行环境就会用一个模型绑定器来构建这个参数. 在MVC运行中, 可以为不同类型的模型注册多个模型绑定器,但是一般情况下的绑定器是 DefaultModelBinder .
    • 可以使用控制器中的 UpdateModel 和 TryUpdateModel 方法显式地调用模型绑定. 

 

posted @ 2014-08-23 20:56  葛杨杨  阅读(285)  评论(0)    收藏  举报