У меня есть устаревшая база данных, в которой используется тип данных SQL smalldatetime
. Это хорошо соответствует стандарту DateTime
. Однако, когда я использую SchemaExport, он, понятно, генерирует столбец с форматом datetime
. Какой пользовательский тип следует использовать в моем сопоставлении, чтобы сформированный столбец был smalldatetime
?FluentNHibernate mapping smalldatetime Тип данных SQL
// Does not work as custom type not known
Map(x => x.BirthDate).Column("dtBirthDate").Not.Nullable().CustomType("smalldatetime");
Perfect. Думал, что есть эквивалент чему-то вроде .CustomType («AnsiString») для varchar. Я собирался попробовать CustomSqlType, но я рад, что не сделал этого, потому что не думал о добавлении CustomType («datetime»). Я предполагаю, что это также будет способ свернуть с помощью, например, smallint (CustomerSqlType («smallint»). CustomType («int»)). – Ted
@Ted точно;) – MichaC
И FYI для всех, кто придет после, вы можете сделать то же самое с перечислениями перечислений с небольшим завихрением (потому что если вы уже делаете пользовательский перечислитель переходов, вы уже определили CustomType). Например, с байтовым перечислением Map (x => x.Season) .Column («SomeTinyIntColumn»). CustomType(). CustomSqlType («tinyint») ... –
Ted