Во время выполнения, а? Я все еще немного озадачен тем, что именно вы спрашиваете, но я делал что-то подобное в прошлом:
foreach (var order in orders)
{
_nhSession.SetReadOnly(order, true); //prevent database updates
}
Я сделал это некоторое время назад, потому что когда я запрашивал список заказов, некоторые свойства объекта не обнулялись, когда они должны были быть. Таким образом, когда NHibernate выполнял сброс, он пытался обновить все мои заказы и установить для нескольких полей, которые были нулевыми из базы данных, их значения по умолчанию C #, например, поле Integer в базе данных, установленное на NULL, изменится на 0 в C # ,