c# - Net Core 3.1、Firebird 2.5 和 FB.EF 7.5

标签 c# entity-framework .net-core firebird firebird-.net-provider

我目前有一个 ASP.NET Core 3.1 项目,并且正在使用 FirebirdSql.EntityFrameowrk.Core.Firebird v7.5.0。

尝试使用主键和字符串列通过简单迁移更新数据库时

public class TB_CUSTOMER
{
    [Key]
    public int ID_CUSTOMER{ get; set; }
    public string NAME{ get; set; }
}

但是,当我推送数据库更新时,出现“ token 未知”错误。 这是由于 EF 创建 SQL 查询的方式所致:

CREATE TABLE "TB_CUSTOMER" (
    "ID_CUSTOMER" INTEGER GENERATED BY DEFAULT AS IDENTITY NOT NULL,
    "NAME" BLOB SUB_TYPE TEXT,
    CONSTRAINT "PK_TB_CUSTOMER" PRIMARY KEY ("ID_CUSTOMER")
);

似乎GENERATED BY是Firebird 3.0带来的语法(由于第三方软件的技术问题我无法使用)。我找不到有关是否可以将 NET Core 3.1(和 FB.EF 7.5.0)与 FB 2.5 一起使用的任何信息。有可能吗,还是注定失败?

如果可能,我如何指定 EF 应该期望的 FB 版本?

最佳答案

目前不支持 Firebird <3。但如果您仔细选择功能,就可以使其发挥作用。一种选择是禁用身份和 use sequence and trigger .

关于c# - Net Core 3.1、Firebird 2.5 和 FB.EF 7.5,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61601590/

相关文章:

c# - 网页和服务器之间的安全通信

c# - EF 4 : The specified type member '*' is not supported in LINQ to Entities

entity-framework - 正确使用 ORM( Entity Framework )的哲学

asp.net - 在 .NET Core 2.0 DLL 中找不到入口点

c# - 如何使用 selenium webdriver C# 获取元素的样式属性值

c# - 使用 iTextSharp 设置页边距

c# - 多对多 EF Core 关系 - 为什么它尝试将实体插入到不同的表中?

asp.net - 标量属性和导航属性 EDMX

c# - 为 mac 制作一个自包含的可执行文件

C# 反射在运行时创建接口(interface)