0
我试图用2类“Class”和“Student”创建一个非常简单的dbcontext类。在启用迁移之后,配置文件一直说它不能在项目数据库中找到模型的命名空间。类型'数据库'中不存在类型名称'Models'
错误代码: CS0426类型名称 '模式' 不存在的类型 '数据库' 数据库存在C:\用户\罗德尼\文件\的Visual Studio 2017年\项目\ SchoolManagementProtal \数据库\迁移\ Configuration.cs
的DbContext类:在迁移
using System.Data.Entity;
namespace Database.Models
{
public class DbContext : System.Data.Entity.DbContext
{
public DbSet<Class> Classes { get; set; }
public DbSet<Student> Students { get; set; }
protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
modelBuilder.Entity<Class>()
.HasMany(c => c.Students)
.WithMany(c => c.Classes);
}
}
}
配置文件:
namespace Database.Migrations
{
using System;
using System.Data.Entity;
using System.Data.Entity.Migrations;
using System.Linq;
internal sealed class Configuration : DbMigrationsConfiguration<Database.**Models**.DbContext>
{
public Configuration()
{
AutomaticMigrationsEnabled = false;
}
}
}
类实体:
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
namespace Database.Models
{
public class Class
{
[Key]
public int Id { get; set; }
[Required]
[StringLength(50)]
public string ClassName { get; set; }
[Required]
[Range(1, 100)]
public int MaxStudents { get; set; }
public int StudentId { get; set; }
public ICollection<Student> Students { get; set; }
}
}
学生实体
using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
namespace Database.Models
{
public class Student
{
[Key]
public int Id { get; set; }
public int ClassId { get; set; }
[Required]
[StringLength(100)]
public string Name { get; set; }
[Required]
public DateTime DateOfBirth { get; set; }
[Required]
public Gender Gender { get; set; }
[Required]
public int TotalHours { get; set; }
[Required]
public int HoursStudied { get; set; }
public DateTime DateJoined { get; set; }
public ICollection<Class> Classes { get; set; }
public int HoursLeft
{
get
{
return this.TotalHours - this.HoursStudied;
}
}
}
}
我想我错过了一些类型的引用或东西。但即使谷歌搜索一段时间后,我找不到任何解决方案。我在这里先向您的帮助表示感谢。干杯!
谢谢你的回答以及明确的解释。 –