首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >实体框架核心:列、参数或变量#4:找不到数据类型bool

实体框架核心:列、参数或变量#4:找不到数据类型bool
EN

Stack Overflow用户
提问于 2020-12-10 01:38:50
回答 1查看 548关注 0票数 1

在这个问题上我有点困惑,尽管这是不言而喻的。我确实尝试过将数据类型从bool更改为bit,但是,bit数据类型显示为白色,并且有一个红色的波浪形。您可以在下面找到我的代码,其中的数据类型已更改为bit。请注意,这是在我运行add-migration命令并查看迁移代码之后。

代码语言:javascript
复制
migrationBuilder.CreateTable(
            name: "AspNetUsers",
            columns: table => new
            {
                Id = table.Column<string>(nullable: false),
                UserName = table.Column<string>(maxLength: 256, nullable: true),
                NormalizedUserName = table.Column<string>(maxLength: 256, nullable: true),
                Email = table.Column<string>(maxLength: 256, nullable: true),
                NormalizedEmail = table.Column<string>(maxLength: 256, nullable: true),
                EmailConfirmed = table.Column<bit>(nullable: false),
                PasswordHash = table.Column<string>(nullable: true),
                SecurityStamp = table.Column<string>(nullable: true),
                ConcurrencyStamp = table.Column<string>(nullable: true),
                PhoneNumber = table.Column<string>(nullable: true),
                PhoneNumberConfirmed = table.Column<bit>(nullable: false),
                TwoFactorEnabled = table.Column<bit>(nullable: false),
                LockoutEnd = table.Column<DateTimeOffset>(nullable: true),
                LockoutEnabled = table.Column<bit>(nullable: false),
                AccessFailedCount = table.Column<int>(nullable: false),
                FirstName = table.Column<string>(nullable: true),
                LastName = table.Column<string>(nullable: true)
            },
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-12-10 11:25:00

请在使用实体框架核心时检查mapping between C# data type to SQL Server column data type

C# bool类型将映射到SQL Server bit类型。因此,在C#中,我们必须使用bool类型,而不是bit类型,但是您可以将类型属性设置为bit。代码如下:

代码语言:javascript
复制
        migrationBuilder.CreateTable(
            name: "TestTables",
            columns: table => new
            {
                Id = table.Column<int>(type: "int", nullable: false)
                    .Annotation("SqlServer:Identity", "1, 1"),
                Name = table.Column<string>(type: "nvarchar(max)", nullable: true),
                Email = table.Column<string>(type: "nvarchar(max)", nullable: true),
                EmailConfirmed = table.Column<bool>(type: "bit", nullable: false),
                LockoutEnd = table.Column<DateTime>(type: "datetime2", nullable: false),
                LockoutEnabled = table.Column<bool>(type: "bit", nullable: false)
            },
            constraints: table =>
            {
                table.PrimaryKey("PK_TestTables", x => x.Id);
            });

SQL server数据库结果如下:

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/65222051

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档