微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

执行 DbCommand 失败 (3ms) [Parameters=[], CommandType='Text'

如何解决执行 DbCommand 失败 (3ms) [Parameters=[], CommandType='Text'

我正在尝试在我的 .Net core console app 和我的本地 MysqL 中使用模型创建迁移,使用 entity framework core Code first 方法一切都很好,但是在创建迁移并尝试使用之后update-database 我在 NugetPackage Console

中遇到此错误

模型:

分支

class Branche
{
    [Key]
    public string ID { get; set; }
    [required]
    public string Title { get; set; }

    public ICollection<Student> Students { get; set; }
}

学生

class Student
{
    [Key]
    public string ID { get;        set; }
    public string Name      { get; set; }
    public string BrancheID { get; set; }

    public Branche Branche { get; set; }
}

数据库上下文:

class SchoolContext:DbContext
{
    public SchoolContext()
    {
        
    } 
    public SchoolContext(DbContextOptions<SchoolContext> dbContextOptions):base(dbContextOptions)
    {
        
    }


    protected override void OnModelCreating(ModelBuilder modelBuilder)
    {

        // Map entities to tables
        modelBuilder.Entity<Branche>().ToTable("Branche");
        modelBuilder.Entity<Student>().ToTable("Student");

        // Configure Primary Keys  
        modelBuilder.Entity<Branche>().HasKey(b => b.ID).HasName("PK_Branche");
        modelBuilder.Entity<Student>().HasKey(s => s.ID).HasName("PK_Student");

        //Configure Relations
        modelBuilder.Entity<Student>().HasOne<Branche>().WithMany().HasPrincipalKey(b => b.ID)
                    .HasForeignKey(s => s.BrancheID).OnDelete(DeleteBehavior.NoAction)
                    .HasConstraintName("FK_Student_Branche");
    }

    protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
    {

        IConfiguration configuration = new ConfigurationBuilder()
                                      .SetBasePath(Directory.GetParent(AppContext.BaseDirectory).FullName)
                                      .AddJsonFile("appsettings.json",false).Build();

        optionsBuilder.UseMysqL(configuration.GetConnectionString("MysqL"),ServerVersion.AutoDetect(configuration.GetConnectionString("MysqL")));
    }

    public DbSet<Branche> Branches { get; set; }
    public DbSet<Student> Students { get; set; }
}

错误

Failed executing DbCommand (3ms) [Parameters=[],CommandType='Text',CommandTimeout='30']
CREATE TABLE `Branches` (
    `ID` nvarchar(450) NOT NULL,`Title` nvarchar(max) NOT NULL,CONSTRAINT `PK_Branches` PRIMARY KEY (`ID`)
);

Screen

我使用 Pomelo.EntityFrameworkCore.MySql 5.0.0-alpha.2

请问有什么关于这个问题的帮助吗?

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其他元素将获得点击?
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。)
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbcDriver发生异常。为什么?
这是用Java进行XML解析的最佳库。
Java的PriorityQueue的内置迭代器不会以任何特定顺序遍历数据结构。为什么?
如何在Java中聆听按键时移动图像。
Java“Program to an interface”。这是什么意思?