MVC5 Form Post null项目预防

时间:2016-02-13 08:11:14

标签: asp.net-mvc-5 form-submit model-binding

我对MVC相当新(我的经验大约是4个月)。我正在尝试构建一个迷你CMS,它可以修改现有文章并创建存储在MongoDB中的新文章。

为了维护"架构"我的MongoDB常量跨文档并防止类型不匹配,并且因为我的某些Model字段不是必需的,所以我想询问我正在采取哪些措施来防止空条目是正确的。

在我的文章模型中,我执行以下操作:

  • 表示整数,bool和DateTime条目:

    public class Article {
    private int? _id;
    
    [BsonRequired]
    [BsonElement("_id")]
    public int? Id
    {
        get { return _id ?? 0; }
        set { _id = value; }
    }
    ...
    private DateTime? _dateLastPublished;
    
    [DataType(DataType.DateTime)]
    [BsonElement("date_last_published")]
    public DateTime? DateLastPublished
    {
        get { return _dateLastPublished ?? new DateTime(); }
        set { _dateLastPublished = value; }
    }
    ...
    private bool? _main;
    
    [BsonElement("isMain")]
    public bool? Main
    {
        get { return _main ?? false; }
        set { _main = value; }
    }
    }
    
    • 对于字符串属性,我添加了addribute [DisplayFormat(ConvertEmptyStringToNull = false)]

    • List<T>

      private List<string> _tags;
      [BsonElement("tags")]
      public List<string> Tags {
      get { return _tags ?? new List<string>(); }
      set { _tags = value; } }
      

这是正确的逻辑吗?或者我这样做完全错了?就结果而言,这是正确的。我只是想通过这样做知道我没有养成任何坏习惯。

非常感谢任何见解。非常感谢你的时间。

0 个答案:

没有答案