我有以下映射:
public class LogEntryMap
{
public LogEntryMap()
{
Map.Id(x => x.Id).GeneratedBy.Identity();
Map(x => x.Context).CustomSqlType("varchar").Length(512);
}
}
但是,SchemaExport用于在 SQL Server 2008 中生成数据库,生成的脚本忽略了长度,因此实际上它最终是varchar长度为 1 的:
create table OV_SAC.dbo.[LogEntry] (
Id BIGINT IDENTITY NOT NULL,
Context varchar null,
primary key (Id)
)
.CustomSqlType("varchar 512")抛出异常。并且在不定义 的情况下CustomSqlType,字符串被映射到nvarchar(确实尊重该Length属性)。
有什么建议么?