zoukankan      html  css  js  c++  java
  • Bind 和 ScaffoldColumn

    今天看了一个源代码,看到里面有这么一段

    [MetadataType(typeof(FormMetaData))]
    public partial class Form
    {
    [Bind(Exclude = "Uid")]
    public class FormMetaData
    {
    [ScaffoldColumn(false)]
    public object Uid { get; set; }

    [ScaffoldColumn(false)]
    public object UserId { get; set; }

    [ScaffoldColumn(false)]
    public object Timestamp { get; set; }

    [DisplayName("Form Name")]
    [DataType(DataType.Text)]
    [Required(ErrorMessage = "A name for your form is required.")]
    [StringLength(255, ErrorMessage = "Please ensure that the form title you enter is less than 50 characters.")]
    public object FormName { get; set; }
    }
    }

    查了相关的资料,以下是相关的解释

    [Bind(Exclude = "OrderId")] 的意思是:View里的Model,在你提交给 Action时,不会绑定到Action的参数Model,默认它会绑定。 mvc是自动双向绑定的,它会把model的数据绑定到视图,提交时,又自动把改变后的视图中的数据绑定到model,方便程序员,不用写大量的,this.txtXXX=...; 真的是非常方便
    Exclue: 排除,一般自增的列不需要绑定。

    [ScaffoldColumn(false)] 

    public int AlbumId { get; set; } 

    这个[ScaffoldColumn(false)] 主要是在在编辑表单页面Edit.cshtml是否生成这个字段的隐藏域,为True就生成,为False就不生成,为true的话就生成 @Html.HiddenFor(model => model.AlbumId),否则不生成。

  • 相关阅读:
    redis:高可用分析
    mysql:explain分析sql
    python中注意事项(更新)
    jupyter使用小技巧(更新)
    Jupyter中的快捷键
    Excel制作甘特图
    Vim编辑器常用命令
    Mysql主从
    常用MySql命令
    进程与线程的一个简单解释
  • 原文地址:https://www.cnblogs.com/todd/p/3051206.html
Copyright © 2011-2022 走看看