实体框架教程(简单代码第一个例子);不起作用

本文关键字:不起作用 第一个 代码 框架 教程 简单 实体 | 更新日期: 2023-09-27 18:00:15

今天我开始学习实体框架教程:简单代码优先示例

我想我已经拥有了它应该有的一切,但我的应用程序不起作用。

这是我的代码:

public class Student
{
    public Student()
    {
    }
    public int StudentID { get; set; }
    public string StudentName { get; set; }
    public DateTime DateOfBirth { get; set; }
    public byte[] Photo { get; set; }
    public decimal Height { get; set; }
    public float Weight { get; set; }
    public Standard Standard { get; set; }
}
public class Standard
    {
        public Standard()
        {
        }
        public int StandardId { get; set; }
        public string StandardName { get; set; }
        public ICollection<Student> Students { get; set; }
    }
public class SchoolContext : DbContext
{
    public SchoolContext()
        : base()
    {
    }
    public DbSet<Student> Students { get; set; }
    public DbSet<Standard> Standards { get; set; }
}
class Program
{
    static void Main(string[] args)
    {
        using (var ctx = new SchoolContext())
        {
            Student stud = new Student() { StudentName = "New Student" };
            ctx.Students.Add(stud);
            ctx.SaveChanges();
            Console.WriteLine("done.");
        }
    }
}

它构建时没有任何错误或警告,控制台启动,但不会超过

ctx.Students.Add(stud);

它也没有创建任何数据库和表。

我遵循了教程中的所有内容,不知道为什么它不起作用。

编辑:它确实在60秒后抛出了一个错误(其他信息正在润色中,我现在真的不知道如何在VS中将其更改为英语(:EntityFramework.dll 中发生类型为"System.Data.SqlClient.SqlException"的未处理异常

附加信息:Wystãpiłbł; d zwiãzany z sieciãlub Wystãpieniem podczas ustanawiania poł的czenia z serwerem programu SQL Server。Nie można odnale Rozyćserwera lub对niedostÉpny开玩笑。Sprawd罗兹,czy nazwa wystńpienia jest apopawna i czy konfiguratja serwera programu SQL Server zezwala na połãczenia zdalne。(提供者:SQL网络接口,错误:26-Błãd podczas lokalizowania określonego serwera/wystńpienia(

我必须补充一点,我使用的是Visual Studio 2013社区和本地数据库,它包含在这个版本的Visual Studio中。

实体框架教程(简单代码第一个例子);不起作用

您是否尝试将导航属性设置为虚拟属性?此外,如果你想将这两个Student和Standard类相互连接,你需要定义外键。

例如,在学生类中添加此项:

public class Student
{
    public Student()
    {
    }
    public int StudentID { get; set; }
    public string StudentName { get; set; }
    public DateTime DateOfBirth { get; set; }
    public byte[] Photo { get; set; }
    public decimal Height { get; set; }
    public float Weight { get; set; }
    public int StandartID{get;set;}//foreign key references Standard(StandardId)
    public virtual Standard Standard { get; set; }//navigation property
}

这个在Stadart类:

public class Standard
{
    public Standard()
    {
    }
    public int StandardId { get; set; }
    public string StandardName { get; set; }
    public int StudentID{get;set;}//foreign key references Student(StudentID)
    public virtual ICollection<Student> Students { get; set; }
}

希望这将帮助您

相关文章: