需要的/可选的属性

 

属性被认为是可选的,如果它包含null有效的。如果null不是一个有效的值分配给一个属性,那么它被认为是一个必需的属性。

 

在这文章:

必须的/可选的属性

公约

数据注解

Fluent API

 

公约

 

按照惯例,一个属性的CLR类型可以包含空值将被配置为可选(String,int?,字节[ ]等)。属性的CLR类型不能包含null将被配置为必须的(int,decimal,bool.等等)。

 

注意:

 

属性的CLR类型不能包含空值不能作为可选配置。该属性将总是被实体框架所需的。

 

数据注解

 

你能使用数据注解来表明这属性是必须的。

 

public class Blog

    {

        public int BlogId { get; set; }

        [Required]

        public string Url { get; set; }

    }

 

Fluent API

 

你能使用Fluent API来表明属性是必须的

 

class MyContext : DbContext

    {

        public DbSet<Blog> Blogs { get; set; }

 

        protected override void OnModelCreating(ModelBuilder modelBuilder)

        {

            modelBuilder.Entity<Blog>()

                .Property(b => b.Url)

                .IsRequired();

        }

    }

 

    public class Blog

    {

        public int BlogId { get; set; }

        public string Url { get; set; }

    }

posted on 2016-11-02 21:32  凯胜  阅读(220)  评论(0)    收藏  举报