Моя модель домена допускает нулевую вставку значения. И мой триггер сделан только для установки столбца, если вставлен ноль. То, чего я пытаюсь достичь, - это решить, во время выполнения решить, должен ли NHibernate обрабатывать его как сгенерированное свойство.
Но из того, что я могу понять, NHibernate не обладает такой гибкостью и в некоторой степени противоречит своей структуре конфигурации, где он создает фабрику сеансов один раз для многократного использования.
Альтернативным решением может быть создание двух фабрик сессий, по одному для каждого из моих сценариев.
Первый (где генерируется свойство) - это нормальное использование.
Второй (где свойство не генерируется) - это сценарии загрузки, когда мне нужно сохранить значение свойства в коде.
Я использую FluentNHibernate для отображений, и, поскольку он отражается в моих классах отображений, я мог установить состояние во время создания фабрик сессий, поэтому, когда мое отображение читается, я мог бы сделать оператор if / else, основанный на фабрике сессий в настоящее время строится. Это должно позволить мне достичь обоих без дублирующих конфигураций, хотя с двумя фабриками сессий в игре вместо одной.
Я еще не пробовал, только теория, но это должно решить мою проблему, и, надеюсь, другие пытаются достичь подобного.