本当にシンプルなdbcontextクラスを作成しようとしましたが、クラス "Class"と "Student"の2クラスです。私が有効化 - 移行後、設定ファイルはプロジェクトデータベース内のモデルへの名前空間を見つけることを意味しています。型名 'Models'が型 'Database'に存在しません
エラーコード: CS0426タイプ名 'モデル' の型 'データベース' データベースCには存在しません:プロジェクト\ SchoolManagementProtal \データベース\ Visual Studioの2017 \ \ Users \ユーザーロドニーの\ドキュメント\移行\ 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;
}
}
}
}
私が参照または何かのいくつかのタイプをしないのですね。しかし、私は何か解決策を見つけることができませんでした。事前に助けてくれてありがとう。乾杯!
答えと明確な説明に感謝します。 –