NHibernate映射:是否可以在不使用属性的情况下通过映射文件将值插入数据库?

NHibernate映射:是否可以在不使用属性的情况下通过映射文件将值插入数据库?,nhibernate,mapping,Nhibernate,Mapping,我正在编写一个应用程序,它使用一个遗留数据库(棕地)。我有几个表,在其中插入数据。这些表中有一些字段需要值,我不希望域实体中有这些值的属性。有没有一种方法可以将默认值插入到字段中,而不必为其创建属性我的映射文件?我无法更改数据库以创建触发器,因此必须通过映射文件/.net应用程序来完成 希望有人能帮忙。我希望我可以使用一个公式,但那不起作用,我也找不到任何其他方法来实现它。你可以使用EventListeners 在OnPostInsert/OnPostUpdate事件中,您可以获得数据库连接并临

我正在编写一个应用程序,它使用一个遗留数据库(棕地)。我有几个表,在其中插入数据。这些表中有一些字段需要值,我不希望域实体中有这些值的属性。有没有一种方法可以将默认值插入到字段中,而不必为其创建属性我的映射文件?我无法更改数据库以创建触发器,因此必须通过映射文件/.net应用程序来完成


希望有人能帮忙。我希望我可以使用一个公式,但那不起作用,我也找不到任何其他方法来实现它。

你可以使用
EventListeners


OnPostInsert
/
OnPostUpdate
事件中,您可以获得数据库连接并临时执行sql查询。

您可以使用私有/受保护的属性。
这意味着将这些字段引入到域模型/映射中,但它们仅限于这些字段,并且不会向使用您的实体的任何人公开。

对我来说,这似乎是一个合理的妥协。

NH让这变得相当容易

使用xml请参见 使用FluentNHibernate请参见

基本思想是对始终具有常量值的不存在属性使用PropertyAccessor