У меня есть класс, заказ, который я сохраняю в базе данных с помощью NHibernate. В веб-приложении есть папка, содержащая объект, который наследуется от Order, для наших целей мы можем назвать его CustomOrder. Я использую CustomOrder для размещения нескольких свойств в объекте Order для целей пользовательского интерфейса. Свойства фактически не должны быть сохранены в базе данных.NHibernate Inherited Class, но не нужно сохранять
Когда я прохожу класс CustomOrder к моему родовому сохранить метод, который просто принимает в объекте заказа, NHibernate жалуется:
Неизвестного класса сущностей: CustomOrder.
Мне не нужно сохранять пользовательские поля в базе данных, но я бы хотел сохранить эту структуру наследования. Думаю ли я в неправильных выражениях или что-то делать, чего я не должен делать?
Сохранить Код
public object Save(Order obj, object userID) {
Order o = (Order)obj;
ISession session = NHibernateHelper.GetCurrentSession();
ITransaction tx = session.BeginTransaction();
session.Save(o);
После случая в первой строке метода, .NET еще идентифицирует его как CustomerOrder.
+1 это именно то, что я собирался предложить (и единственный способ сделать это). –