C# Programming
02-10-2010, 04:42 PM
Hi
I'm newbie in NHibernate. I've downloaded example from: https://www.hibernate.org/379.html[^ (https://www.hibernate.org/379.html)]
I can retreive data from database via iquery but i have a problem when I try save data.
Here is code:
Supplier supplier = new Supplier();
supplier.Name = "Supplier5";
Manufacturer manufacturer = new Manufacturer("manufacturer5");
Product product = new Product();
product.Name = "product5";
product.Supplier = supplier;
supplier.ProductList.Add(product);
manufacturer.ProductSet.Add(product);
product.ManufacturerSet.Add(manufacturer);
ITransaction transaction = Session.BeginTransaction();
try
{
/*IQuery query = Session.CreateQuery("from Supplier as s order by s.Name asc");
IList lSuppliers = query.List();
foreach (Supplier supplier in lSuppliers)
{
string name = supplier.Name;
}*/ // here ok
Session.Save(supplier); //error
transaction.Commit();
}
catch (NHibernate.HibernateException nexp)
{
}
I've got an error:
error performing isolated work
InnerException: {"Object reference not set to an instance of an object."}
Here is mapping file supplier.hbm.file:
</span span class="code-SummaryComment"version/spanspan class="code-keyword"="/spanspan class="code-keyword"1.0"/span span class="code-SummaryComment"encoding/spanspan class="code-keyword"="/spanspan class="code-keyword"utf-8"/spanspan class="code-SummaryComment"?/spanspan class="code-SummaryComment">
hibernate_unique_key
next_hi
10
from Supplier
StackTrace:
" at NHibernate.Transaction.AdoNetTransactionFactory.ExecuteWorkInIsolation(ISessionImplementor session, IIsolatedWork work, Boolean transacted)\r\n at NHibernate.Transaction.AdoNetWithDistrubtedTransactionFactory.ExecuteWorkInIsolation(ISessionImpleme ntor session, IIsolatedWork work, Boolean transacted)\r\n at NHibernate.Engine.Transaction.Isolater.DoIsolatedWork(IIsolatedWork work, ISessionImplementor session)\r\n at NHibernate.Engine.TransactionHelper.DoWorkInNewTransaction(ISessionImplementor session)\r\n at NHibernate.Id.TableGenerator.Generate(ISessionImplementor session, Object obj)\r\n at NHibernate.Id.TableHiLoGenerator.Generate(ISessionImplementor session, Object obj)\r\n at NHibernate.Event.Default.AbstractSaveEventListener.SaveWithGeneratedId(Object entity, String entityName, Object anything, IEventSource source, Boolean requiresImmediateIdAccess)\r\n at NHibernate.Event.Default.DefaultSaveOrUpdateEventListener.SaveWithGeneratedOrRequestedId(SaveOrUpdat eEvent event)\r\n at NHibernate.Event.Default.DefaultSaveEventListener.SaveWithGeneratedOrRequestedId(SaveOrUpdateEvent event)\r\n at NHibernate.Event.Default.DefaultSaveOrUpdateEventListener.EntityIsTransient(SaveOrUpdateEvent event)\r\n at NHibernate.Event.Default.DefaultSaveEventListener.PerformSaveOrUpdate(SaveOrUpdateEvent event)\r\n at NHibernate.Event.Default.DefaultSaveOrUpdateEventListener.OnSaveOrUpdate(SaveOrUpdateEvent event)\r\n at NHibernate.Impl.SessionImpl.FireSave(SaveOrUpdateEvent event)\r\n at NHibernate.Impl.SessionImpl.Save(Object obj)\r\n at NHibernateExampleApp.Form1.NHTest() in D:\\rg\\proj_CSharp\\NHibernateExampleApp\\NHibernateExampleApp\\Form1.cs:line 136"
I can see that is a problem with hilo.
I have table: hibernate_unique_key
Column next_hi has value 0
Could someone help me?
ThanksI
modified on Tuesday, February 9, 2010 1:44 AM
I'm newbie in NHibernate. I've downloaded example from: https://www.hibernate.org/379.html[^ (https://www.hibernate.org/379.html)]
I can retreive data from database via iquery but i have a problem when I try save data.
Here is code:
Supplier supplier = new Supplier();
supplier.Name = "Supplier5";
Manufacturer manufacturer = new Manufacturer("manufacturer5");
Product product = new Product();
product.Name = "product5";
product.Supplier = supplier;
supplier.ProductList.Add(product);
manufacturer.ProductSet.Add(product);
product.ManufacturerSet.Add(manufacturer);
ITransaction transaction = Session.BeginTransaction();
try
{
/*IQuery query = Session.CreateQuery("from Supplier as s order by s.Name asc");
IList lSuppliers = query.List();
foreach (Supplier supplier in lSuppliers)
{
string name = supplier.Name;
}*/ // here ok
Session.Save(supplier); //error
transaction.Commit();
}
catch (NHibernate.HibernateException nexp)
{
}
I've got an error:
error performing isolated work
InnerException: {"Object reference not set to an instance of an object."}
Here is mapping file supplier.hbm.file:
</span span class="code-SummaryComment"version/spanspan class="code-keyword"="/spanspan class="code-keyword"1.0"/span span class="code-SummaryComment"encoding/spanspan class="code-keyword"="/spanspan class="code-keyword"utf-8"/spanspan class="code-SummaryComment"?/spanspan class="code-SummaryComment">
hibernate_unique_key
next_hi
10
from Supplier
StackTrace:
" at NHibernate.Transaction.AdoNetTransactionFactory.ExecuteWorkInIsolation(ISessionImplementor session, IIsolatedWork work, Boolean transacted)\r\n at NHibernate.Transaction.AdoNetWithDistrubtedTransactionFactory.ExecuteWorkInIsolation(ISessionImpleme ntor session, IIsolatedWork work, Boolean transacted)\r\n at NHibernate.Engine.Transaction.Isolater.DoIsolatedWork(IIsolatedWork work, ISessionImplementor session)\r\n at NHibernate.Engine.TransactionHelper.DoWorkInNewTransaction(ISessionImplementor session)\r\n at NHibernate.Id.TableGenerator.Generate(ISessionImplementor session, Object obj)\r\n at NHibernate.Id.TableHiLoGenerator.Generate(ISessionImplementor session, Object obj)\r\n at NHibernate.Event.Default.AbstractSaveEventListener.SaveWithGeneratedId(Object entity, String entityName, Object anything, IEventSource source, Boolean requiresImmediateIdAccess)\r\n at NHibernate.Event.Default.DefaultSaveOrUpdateEventListener.SaveWithGeneratedOrRequestedId(SaveOrUpdat eEvent event)\r\n at NHibernate.Event.Default.DefaultSaveEventListener.SaveWithGeneratedOrRequestedId(SaveOrUpdateEvent event)\r\n at NHibernate.Event.Default.DefaultSaveOrUpdateEventListener.EntityIsTransient(SaveOrUpdateEvent event)\r\n at NHibernate.Event.Default.DefaultSaveEventListener.PerformSaveOrUpdate(SaveOrUpdateEvent event)\r\n at NHibernate.Event.Default.DefaultSaveOrUpdateEventListener.OnSaveOrUpdate(SaveOrUpdateEvent event)\r\n at NHibernate.Impl.SessionImpl.FireSave(SaveOrUpdateEvent event)\r\n at NHibernate.Impl.SessionImpl.Save(Object obj)\r\n at NHibernateExampleApp.Form1.NHTest() in D:\\rg\\proj_CSharp\\NHibernateExampleApp\\NHibernateExampleApp\\Form1.cs:line 136"
I can see that is a problem with hilo.
I have table: hibernate_unique_key
Column next_hi has value 0
Could someone help me?
ThanksI
modified on Tuesday, February 9, 2010 1:44 AM