因此,与SQL Server不同,在MySQL中,以下属性创建类型为LONGTEXT
的列:
public string Name { get; set; }
我想要一个NVARCHAR(255)
列,所以我尝试了以下内容:
//[DataType("NVARCHAR"), StringLength(255)] // creates a varchar(255) column.
[DataType("NVARCHAR"), MaxLength(255)] // creates a varchar(255) column.
public string Name { get; set; }
我还尝试了以下Fluent API:
modelBuilder.Entity<MyEntity>()
.Property(p => p.Name)
.HasColumnType("NVARCHAR")
.HasMaxLength(255); // still creates a varchar(255) column.
..和
modelBuilder.Entity<MyEntity>()
.Property(p => p.Name)
.HasColumnType("NVARCHAR(255)");
导致InvalidOperationException
出现以下消息:
在MySql中找不到商店类型'NVARCHAR(255)' 提供者清单
有什么我做错了吗?使用代码优先创建nvarchar列的正确方法是什么?