Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-mvc/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net mvc asp.net MVC中的属性和HasRequired关键字是什么?_Asp.net Mvc_Entity Framework_Foreign Keys - Fatal编程技术网

Asp.net mvc asp.net MVC中的属性和HasRequired关键字是什么?

Asp.net mvc asp.net MVC中的属性和HasRequired关键字是什么?,asp.net-mvc,entity-framework,foreign-keys,Asp.net Mvc,Entity Framework,Foreign Keys,我正在使用MVC的代码优先方法,但在生成数据库时使用的属性和haskeyrequired关键字是什么 代码: 公共类StudentDBContext:DbContext { public StudentDBContext():base(“StudentDBContext”) { } 公共数据库集学生{get;set;} 公共数据库集课程{get;set;} 模型创建时受保护的覆盖无效(DbModelBuilder modelBuilder) { //课程 modelBuilder.Entity(

我正在使用MVC的代码优先方法,但在生成数据库时使用的属性和haskeyrequired关键字是什么

代码:

公共类StudentDBContext:DbContext
{
public StudentDBContext():base(“StudentDBContext”)
{
}
公共数据库集学生{get;set;}
公共数据库集课程{get;set;}
模型创建时受保护的覆盖无效(DbModelBuilder modelBuilder)
{
//课程
modelBuilder.Entity().HasKey(p=>p.CourseId);//数据库中的主键字段
modelBuilder.Entity().Property(c=>c.CourseId).HasDatabaseGeneratedOption(DatabaseGeneratedOption.Identity);
//学生
modelBuilder.Entity().HasKey(b=>b.Id);//学生Id
//什么是属性关键字?
modelBuilder.Entity().Property(b=>b.Id).HasDatabaseGeneratedOption(DatabaseGeneratedOption.Identity);
//什么是必需的关键字?
modelBuilder.Entity().HasRequired(p=>p.course)。WithMany(b=>b.student)。HasForeignKey(b=>b.CourseId);
基于模型创建(modelBuilder);
}
}

为什么在asp.net MVC中使用该属性并具有必需的关键字含义?

有关详细信息,请参阅。您还可以阅读其中的内容和方法。

属性用于引用属性,而hasrequired用于对该属性强制执行必需的规则。参见此处。

我指的是这个链接,它是fluent api。什么是fluentapi?你能给我在上面的模型类中使用什么样的fluent api提供建议吗?@rahulpatil在开始使用EF6之前,请阅读文档,希望能有所帮助
   public class StudentDBContext : DbContext
    {
        public StudentDBContext() : base("StudentDBContext")
        {
        }

        public DbSet<Student> students { get; set; }
        public DbSet<Course> course { get; set; }

        protected override void OnModelCreating(DbModelBuilder modelBuilder)
        {
            //course
            modelBuilder.Entity<Course>().HasKey(p => p.CourseId); //Primary Key field in a database
            modelBuilder.Entity<Course>().Property(c => c.CourseId).HasDatabaseGeneratedOption(DatabaseGeneratedOption.Identity);

            //student
            modelBuilder.Entity<Student>().HasKey(b => b.Id);   //Student Id
                                           //what is property keyword?
            modelBuilder.Entity<Student>().Property(b => b.Id).HasDatabaseGeneratedOption(DatabaseGeneratedOption.Identity);

                                          //what is hasrequired keyword?
            modelBuilder.Entity<Student>().HasRequired(p => p.course).WithMany(b => b.student).HasForeignKey(b => b.CourseId);

            base.OnModelCreating(modelBuilder);
        }
    }