我对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; } }
这是正确的逻辑吗?或者我这样做完全错了?就结果而言,这是正确的。我只是想通过这样做知道我没有养成任何坏习惯。
非常感谢任何见解。非常感谢你的时间。