Hi Sofija 

If you could provide a sample mapping file and the test it would be very 
useful.

In the meantime can you post the SQL that NHibernate is generating? If you 
put the line <property name="show_sql">true</property> in the 
session-factory section of your configuration then the SQL will be written 
to Console.Out.

As far as my understanding goes Firebird uses the same appoach to an 
Identity PK as SQL Server and many other DBMS, see 
http://www.firebirdfaq.org/faq243/ for further information.

Thanks

Michael

On Thursday, 22 March 2012 22:45:48 UTC, Sofija Blazevski wrote:
>
> Hi Michael, 
>
>
> Thank you so much for answering! 
>
> DBMS is MS SQL Server 2008 R2, plain insert on view works, but when 
> you mentioned I'm not sure if returning ID from database server is 
> working - maybe that is the problem - can I customize this feature 
> somehow?. That also makes me wonder, how would NH get inserted ID in 
> case of a Firebird DBMS ? 
>
> I'm not sure if I should paste entire db code here, I'll see if I can 
> prepare something that makes sense and upload it somewhere with 
> everything else. 
>
> As for stored procedures, I don't have any issue, I must admit I 
> didn't really even try it with Fluent & NH, I just don't like the way 
> it is supposed to be used. I need client implementation to be as 
> simple and clean as possible. I'm not saying it is bad, I'm just used 
> to much cleaner approach I have setup in Delphi, based on naming 
> conventions of course. That's why I would like to use NH in 
> combination with Fluent conventions based automapping, they are really 
> thrilling in every way except when it comes to stored procedures. 
>
> NH error details 
>
> NHibernate.AssertionFailiure == "null identifier" 
>
> This is Stack Trace, its long... 
>
>    at NHibernate.Engine.EntityKey..​ctor(Object identifier, String 
> rootEntityName, String entityName, IType identifierType, Boolean 
> batchLoadable, ISessionFactoryImplementor factory, EntityMode 
> entityMode) in d:\CSharp\NH\NH\nhibernate\​src\NHibernate\Engine 
> \EntityKey.cs:line 42 
>    at NHibernate.Engine.EntityKey..​ctor(Object id, IEntityPersister 
> persister, EntityMode entityMode) in d:\CSharp\NH\NH\nhibernate\src 
> \NHibernate\Engine\EntityKey.​cs:line 28 
>    at 
> NHibernate.Event.Default.​AbstractSaveEventListener.​PerformSaveOrReplicate(Object
>  
>
> entity, EntityKey key, IEntityPersister persister, Boolean 
> useIdentityColumn, Object anything, IEventSource source, Boolean 
> requiresImmediateIdAccess) in d:\CSharp\NH\NH\nhibernate\​src\NHibernate 
> \Event\Default\​AbstractSaveEventListener.cs:​line 263 
>    at 
> NHibernate.Event.Default.​AbstractSaveEventListener.​PerformSave(Object 
> entity, Object id, IEntityPersister persister, Boolean 
> useIdentityColumn, Object anything, IEventSource source, Boolean 
> requiresImmediateIdAccess) in d:\CSharp\NH\NH\nhibernate\​src\NHibernate 
> \Event\Default\​AbstractSaveEventListener.cs:​line 187 
>    at 
> NHibernate.Event.Default.​AbstractSaveEventListener.​SaveWithGeneratedId(Object
>  
>
> entity, String entityName, Object anything, IEventSource source, 
> Boolean requiresImmediateIdAccess) in d:\CSharp\NH\NH\nhibernate\src 
> \NHibernate\Event\Default\​AbstractSaveEventListener.cs:​line 119 
>    at 
> NHibernate.Event.Default.​DefaultSaveOrUpdateEventListen​er.​SaveWithGeneratedOrRequestedId​(SaveOrUpdateEvent
>  
>
> event) in d:\CSharp\NH\NH\nhibernate\​src\NHibernate\Event\Default 
> \​DefaultSaveOrUpdateEventListen​er.cs:line 162 
>    at 
> NHibernate.Event.Default.​DefaultSaveOrUpdateEventListen​er.EntityIsTransient(​SaveOrUpdateEvent
>  
>
> event) in d:\CSharp\NH\NH\nhibernate\​src\NHibernate\Event\Default 
> \​DefaultSaveOrUpdateEventListen​er.cs:line 148 
>    at 
> NHibernate.Event.Default.​DefaultSaveOrUpdateEventListen​er.PerformSaveOrUpdate(​SaveOrUpdateEvent
>  
>
> event) in d:\CSharp\NH\NH\nhibernate\​src\NHibernate\Event\Default 
> \​DefaultSaveOrUpdateEventListen​er.cs:line 76 
>    at 
> NHibernate.Event.Default.​DefaultSaveOrUpdateEventListen​er.OnSaveOrUpdate(​SaveOrUpdateEvent
>  
>
> event) in d:\CSharp\NH\NH\nhibernate\​src\NHibernate\Event\Default 
> \​DefaultSaveOrUpdateEventListen​er.cs:line 53 
>    at NHibernate.Impl.SessionImpl.​FireSaveOrUpdate(​SaveOrUpdateEvent 
> event) in d:\CSharp\NH\NH\nhibernate\​src\NHibernate\Impl 
> \SessionImpl.cs:line 2662 
>    at NHibernate.Impl.SessionImpl.​SaveOrUpdate(Object obj) in d:\CSharp 
> \NH\NH\nhibernate\src\​NHibernate\Impl\SessionImpl.​cs:line 541 
>    at DAL_FluentNHibernate.​FluentNHibernateEngine.​SaveAll[T](IList`1 
> instances) in C:\Project\WebStartup\DAL_​FluentNHibernate 
> \FluentNHibernateEngine.cs:​line 56 
>    at UI_WEBFORMS._Default.​ASPxButton1_Click(Object sender, EventArgs 
> e) in C:\Project\WebStartup\UI_​WEBFORMS\Default.aspx.cs:line 83 
>    at DevExpress.Web.ASPxEditors.​ASPxButton.OnClick(EventArgs e) 
>    at DevExpress.Web.ASPxEditors.​ASPxButton.RaisePostBackEvent(​String 
> eventArgument) 
>    at 
> DevExpress.Web.ASPxClasses.​ASPxWebControl.System.Web.UI.​IPostBackEventHandler.​RaisePostBackEvent(String
>  
>
> eventArgument) 
>    at System.Web.UI.Page.​RaisePostBackEvent(​IPostBackEventHandler 
> sourceControl, String eventArgument) 
>    at System.Web.UI.Page.​RaisePostBackEvent(​NameValueCollection 
> postData) 
>    at System.Web.UI.Page.​ProcessRequestMain(Boolean 
> includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) 
>
>
> On Mar 22, 5:01 pm, Michael Charalambous 
> <michael.charalamb...@gmail.​com> wrote: 
> > Hi Sofija 
> > 
> > Both identity and native are post insert generators, so it sounds like 
> > NHibernate is not able to get the newly inserted ID from the database 
> when 
> > updating the view. 
> > 
> > Please can you provide some further information? Ideally the DBMS are 
> you 
> > using, and a failing test showing your scenario including: the table and 
> > view schema, your fluent mapping of the view, test code and the 
> exception. 
> > 
> > Also please can you give the issues you are having with stored 
> procedures 
> > and NHibernate? I've used them to insert data into a legacy database and 
> > found NHibernate works quite well in my scenario. 
> > 
> > Thanks 
> > 
> > Michael 
> > 
> > 
> > 
> > 
> > 
> > 
> > 
> > On Friday, 16 March 2012 23:03:59 UTC, Sofija Blazevski wrote: 
> > 
> > > Hello, everyone! 
> > 
> > > I'm new to NHibernate, and I would like to use it together with 
> > > FluentNHibernate. 
> > > I've been trying to use them together for an updatable view scenario. 
> > 
> > > This is the problem: 
> > 
> > > None of the following Id generator classes 
> > > <generator class="identity" /> 
> > > <generator class="native" /> 
> > 
> > > allows inserting into updatable view. Updatable view (more precisely 
> > > database server) takes care of assigning id. 
> > > Each time I get "Null id" (or is it  "Null identifier" ) thrown from 
> > > ISession.SaveOrUpdate method. 
> > > While, on the other hand, same scenario with inserting into table 
> > > works perfectly. 
> > 
> > > On database everything is tested to work. 
> > > NHibernate version is 3.2.0.4000 
> > 
> > > What is correct way to setup NHibernate to allow inserting into a view 
> > > without providing value for whatever field is set as Id? 
> > 
> > > I would like to use NHibernate for an application with intensive usage 
> > > of views and stored procedures. 
> > > Now, I know you probably don't like usage of updatable views, and I 
> > > would not like to get into  discussion on why do I use them, I simply 
> > > need to use them - if I'm gonna use any ORM framework as there is no 
> > > painless way to just use stored procedures (I mean in any ORM in any 
> > > technology I came across so far). 
> > 
> > > Thanks in advance for helping. 
> > 
> > > - Sofija 
> > 
> > On Friday, 16 March 2012 23:03:59 UTC, Sofija Blazevski wrote: 
> > 
> > > Hello, everyone! 
> > 
> > > I'm new to NHibernate, and I would like to use it together with 
> > > FluentNHibernate. 
> > > I've been trying to use them together for an updatable view scenario. 
> > 
> > > This is the problem: 
> > 
> > > None of the following Id generator classes 
> > > <generator class="identity" /> 
> > > <generator class="native" /> 
> > 
> > > allows inserting into updatable view. Updatable view (more precisely 
> > > database server) takes care of assigning id. 
> > > Each time I get "Null id" (or is it  "Null identifier" ) thrown from 
> > > ISession.SaveOrUpdate method. 
> > > While, on the other hand, same scenario with inserting into table 
> > > works perfectly. 
> > 
> > > On database everything is tested to work. 
> > > NHibernate version is 3.2.0.4000 
> > 
> > > What is correct way to setup NHibernate to allow inserting into a view 
> > > without providing value for whatever field is set as Id? 
> > 
> > > I would like to use NHibernate for an application with intensive usage 
> > > of views and stored procedures. 
> > > Now, I know you probably don't like usage of updatable views, and I 
> > > would not like to get into  discussion on why do I use them, I simply 
> > > need to use them - if I'm gonna use any ORM framework as there is no 
> > > painless way to just use stored procedures (I mean in any ORM in any 
> > > technology I came across so far). 
> > 
> > > Thanks in advance for helping. 
> > 
> > > - Sofija 
> > 
> > On Friday, 16 March 2012 23:03:59 UTC, Sofija Blazevski wrote: 
> > 
> > > Hello, everyone! 
> > 
> > > I'm new to NHibernate, and I would like to use it together with 
> > > FluentNHibernate. 
> > > I've been trying to use them together for an updatable view scenario. 
> > 
> > > This is the problem: 
> > 
> > > None of the following Id generator classes 
> > > <generator class="identity" /> 
> > > <generator class="native" /> 
> > 
> > > allows inserting into updatable view. Updatable view (more precisely 
> > > database server) takes care of assigning id. 
> > > Each time I get "Null id" (or is it  "Null identifier" ) thrown from 
> > > ISession.SaveOrUpdate method. 
> > > While, on the other hand, same scenario with inserting into table 
> > > works perfectly. 
> > 
> > > On database everything is tested to work. 
> > > NHibernate version is 3.2.0.4000 
> > 
> > > What is correct way to setup NHibernate to allow inserting into a view 
> > > without providing value for whatever field is set as Id? 
> > 
> > > I would like to use NHibernate for an application with intensive usage 
> > > of views and stored procedures. 
> > > Now, I know you probably don't like usage of updatable views, and I 
> > > would not like to get into  discussion on why do I use them, I simply 
> > > need to use them - if I'm gonna use any ORM framework as there is no 
> > > painless way to just use stored procedures (I mean in any ORM in any 
> > > technology I came across so far). 
> > 
> > > Thanks in advance for helping. 
> > 
> > > - Sofija 
> > 
> > On Friday, 16 March 2012 23:03:59 UTC, Sofija Blazevski wrote: 
> > 
> > > Hello, everyone! 
> > 
> > > I'm new to NHibernate, and I would like to use it together with 
> > > FluentNHibernate. 
> > > I've been trying to use them together for an updatable view scenario. 
> > 
> > > This is the problem: 
> > 
> > > None of the following Id generator classes 
> > > <generator class="identity" /> 
> > > <generator class="native" /> 
> > 
> > > allows inserting into updatable view. Updatable view (more precisely 
> > > database server) takes care of assigning id. 
> > > Each time I get "Null id" (or is it  "Null identifier" ) thrown from 
> > > ISession.SaveOrUpdate method. 
> > > While, on the other hand, same scenario with inserting into table 
> > > works perfectly. 
> > 
> > > On database everything is tested to work. 
> > > NHibernate version is 3.2.0.4000 
> > 
> > > What is correct way to setup NHibernate to allow inserting into a view 
> > > without providing value for whatever field is set as Id? 
> > 
> > > I would like to use NHibernate for an application with intensive usage 
> > > of views and stored procedures. 
> > > Now, I know you probably don't like usage of updatable views, and I 
> > > would not like to get into  discussion on why do I use them, I simply 
> > > need to use them - if I'm gonna use any ORM framework as there is no 
> > > painless way to just use stored procedures (I mean in any ORM in any 
> > > technology I came across so far). 
> > 
> > > Thanks in advance for helping. 
> > 
> > > - Sofija 
> > 
> > On Friday, 16 March 2012 23:03:59 UTC, Sofija Blazevski wrote: 
> > 
> > > Hello, everyone! 
> > 
> > > I'm new to NHibernate, and I would like to use it together with 
> > > FluentNHibernate. 
> > > I've been trying to use them together for an updatable view scenario. 
> > 
> > > This is the problem: 
> > 
> > > None of the following Id generator classes 
> > > <generator class="identity" /> 
> > > <generator class="native" /> 
> > 
> > > allows inserting into updatable view. Updatable view (more precisely 
> > > database server) takes care of assigning id. 
> > > Each time I get "Null id" (or is it  "Null identifier" ) thrown from 
> > > ISession.SaveOrUpdate method. 
> > > While, on the other hand, same scenario with inserting into table 
> > > works perfectly. 
> > 
> > > On database everything is tested to work. 
> > > NHibernate version is 3.2.0.4000 
> > 
> > > What is correct way to setup NHibernate to allow inserting into a view 
> > > without providing value for whatever field is set as Id? 
> > 
> > > I would like to use NHibernate for an application with intensive usage 
> > > of views and stored procedures. 
> > > Now, I know you probably don't like usage of updatable views, and I 
> > > would not like to get into  discussion on why do I use them, I simply 
> > > need to use them - if I'm gonna use any ORM framework as there is no 
> > > painless way to just use stored procedures (I mean in any ORM in any 
> > > technology I came across so far). 
> > 
> > > Thanks in advance for helping. 
> > 
> > > - Sofija 
> > 
> > On Friday, 16 March 2012 23:03:59 UTC, Sofija Blazevski wrote: 
> > 
> > > Hello, everyone! 
> > 
> > > I'm new to NHibernate, and I would like to use it together with 
> > > FluentNHibernate. 
> > > I've been trying to use them together for an updatable view scenario. 
> > 
> > > This is the problem: 
> > 
> > > None of the following Id generator classes 
> > > <generator class="identity" /> 
> > > <generator class="native" /> 
> > 
> > > allows inserting into updatable view. Updatable view (more precisely 
> > > database server) takes care of assigning id. 
> > > Each time I get "Null id" (or is it  "Null identifier" ) thrown from 
> > > ISession.SaveOrUpdate method. 
> > > While, on the other hand, same scenario with inserting into table 
> > > works perfectly. 
> > 
> > > On database everything is tested to work. 
> > > NHibernate version is 3.2.0.4000 
> > 
> > > What is correct way to setup NHibernate to allow inserting into a view 
> > > without providing value for whatever field is set as Id? 
> > 
> > > I would like to use NHibernate for an application with intensive usage 
> > > of views and stored procedures. 
> > > Now, I know you probably don't like usage of updatable views, and I 
> > > would not like to get into  discussion on why do I use them, I simply 
> > > need to use them - if I'm gonna use any ORM framework as there is no 
> > > painless way to just use stored procedures (I mean in any ORM in any 
> > > technology I came across so far). 
> > 
> > > Thanks in advance for helping. 
> > 
> > > - Sofija

-- 
You received this message because you are subscribed to the Google Groups 
"nhusers" group.
To view this discussion on the web visit 
https://groups.google.com/d/msg/nhusers/-/iHVLbDuy5h8J.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/nhusers?hl=en.

Reply via email to