Oskar,
But if one were to replace “rows affected” with “entities affected”, then I think the conversation gets much more interesting. For example I delete an Invoice entity, that is set to cascade delete the associated LineItem entities…How many entities (or even better which entities) were actually affected???…. David From: [email protected] [mailto:[email protected]] On Behalf Of Oskar Berggren Sent: Tuesday, September 11, 2012 9:40 AM To: [email protected] Subject: Re: [nhusers] Affected rows in write methods As I'm sure you're aware, NHibernate is more than a database wrapper/API, unlike ADO.Net. It exposes a different model of your data which is centered around objects, not database tuples. Therefore the "amount of rows affected" is not only unavailable, it is not even relevant in an abstraction such as the Repository pattern. Like Gunnar said, Save() might insert 1 row. Or many rows in different tables depending on your mapping and cascading. Or it might insert 0 rows, and the INSERT statements might then get executed "together with" a subsequent query. If one wants to extract these figures for some sort of out-of-band statistical purposes, there's probably an extension point available somewhere, but putting it in a repository is only going to pollute the API IMHO. /Oskar 2012/9/11 Felipe Oriani <[email protected]> No, I just want to implement this functionality on my repositories, but if it's not available, no problem. But I think a little strange, because it works fine on ado.net with ExecuteNonQuery, of course the ado.net does not have a great design and transacional level as Nhibernate has but would be nice to have this feature on the ORM tool. On Tue, Sep 11, 2012 at 10:21 AM, Oskar Berggren <[email protected]> wrote: Are you trying to accomplish anything in particular? /Oskar 2012/9/11 Felipe Oriani <[email protected]> Hello guys, I would like to know, how can I get the affected rows when I call session's methods like Save, Delete, SaveOrUpdate, etc... as we got with ICommand.ExecuteNonQuery from Ado.Net? Is there any way to do this? I have a repository implementation and I would like to return this value, like this: public int Save(T entity) { session.Save(entity); return ???; } Thank you! -- ______________________________________ Felipe B Oriani felipeoriani.com.br <http://felipeoriani.com.br/> [email protected] "...Trabalhe quanto puder, tornando-se útil quanto possível..." , por André Luiz -- You received this message because you are subscribed to the Google Groups "nhusers" group. To post to this group, send email to [email protected]. To unsubscribe from this group, send email to [email protected] <mailto:nhusers%[email protected]> . For more options, visit this group at http://groups.google.com/group/nhusers?hl=en. -- You received this message because you are subscribed to the Google Groups "nhusers" group. To post to this group, send email to [email protected]. To unsubscribe from this group, send email to [email protected] <mailto:nhusers%[email protected]> . For more options, visit this group at http://groups.google.com/group/nhusers?hl=en. -- ______________________________________ Felipe B Oriani felipeoriani.com.br <http://felipeoriani.com.br/> [email protected] "...Trabalhe quanto puder, tornando-se útil quanto possível..." , por André Luiz -- You received this message because you are subscribed to the Google Groups "nhusers" group. To post to this group, send email to [email protected]. To unsubscribe from this group, send email to [email protected] <mailto:nhusers%[email protected]> . For more options, visit this group at http://groups.google.com/group/nhusers?hl=en. -- You received this message because you are subscribed to the Google Groups "nhusers" group. 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. -- You received this message because you are subscribed to the Google Groups "nhusers" group. 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.
