Можно ли в nHibernate установить свойство NOT для сопоставления со столбцом в таблице, в то время как другие свойства класса это делают
У меня есть класс и все свойства, но один сопоставлен с соответствующими столбцами таблицы. Теперь одно оставшееся свойство, которое я хочу установить на какое-то значение, когда nhibernate создает новый экземпляр класса.
например.
--only two columns
CREATE TABLE [dbo].[Person](
[key] [int] NOT NULL,
[Name] [nvarchar](50) NULL)
--..........
public class Entity
{
public int key {get;set;}
public string EntityType {get;set;}
}
public class Person : Entity
{
public string Name {get;set;}
}
and i have maps
Map(Person => Person.key).Not.Nullable();
Map(Person => Person.Name).Not.Nullable();
// i don't want a map for EntityType
здесь я хочу для экземпляра Person, EntityType всегда должен быть установлен на пользовательскую строку "Person". другие свойства обычно сопоставляются с соответствующими столбцами таблицы персон.
Это возможно?
1 ответ
Просто инициализируйте EntityType
недвижимость в Person
конструктор с вашим желаемым значением. Вам не нужно наносить на карту это.
public class Person : Entity
{
public Person()
{
EntityType = "Person";
}
}