Как я могу использовать общедоступные методы (не виртуальные) с NHibernate?NHibernate: как отключить виртуальные свойства класса?
У меня есть этот код:
public string crewNumber
{
get
{
return this.crewNumberField;
}
set
{
this.crewNumberField = value;
}
}
Примечание все мои классы, свойства, методы и интерфейсы автоматически сгенерирован и я не хочу, чтобы изменить их вручную.
Приведенный выше код производит эту ошибку:
The following types may not be used as proxies: ... method get_crewNumber should be 'public/protected virtual'
Я вижу, что shold можно использовать простые общественные только свойства here:
In our example above, we've made the properties and the constructor public - but that's not a requirement for NHibernate - it can use public, protected, internal, or even private properties to persist your data.
Как отключить этот виртуальный по умолчанию?
Это сводит меня с ума. Я действительно искушению здесь, чтобы перетащить адаптер один данных в визуальной студии и закончить эту нелепую ситуацию раз и навсегда ;-)
Благодарности
Я не думаю, что я когда-либо имел эту проблему, мои свойства не являются виртуальными. Можете ли вы отправить стек вызовов или более подробную информацию об ошибке? – Slavo
Славо: какую версию NH вы используете? Такое поведение реализовано в определенной версии NH, возможно, вы используете более старую версию, которая не использовала динамические прокси-серверы? –
Не проще ли изменить сценарий генерации кода? – Paco