Like i said, the "timer" is in SQL Profiler. In otherwords not in the code, but i also have the following bits in there to compare.
DateTime start = DateTime.Now; IList<Debiteur> lijst = session.CreateCriteria(typeof (Debiteur)).List<Debiteur>(); DateTime stop = DateTime.Now; dataGridView1.DataSource = lijst; MessageBox.Show((stop-start).Seconds +"."+ (stop- start).Milliseconds); Meaning i start the timer AFTER the session has been created, and start the "query" if i am getting this. the NHibernate project atm takes 26 seconds to do this (this is with another enitity added with Lazyloading, without this entitity it was +- 21 seconds) EF does the same action in +- 5 seconds. Which leads me to believe the problem lies in the execution of the SQL. On 12 aug, 14:07, Paco Wensveen <pac...@gmail.com> wrote: > The sql is not executing slowly, the building of the sessionfactory is > slow. Start your timer after buildsessionfactory and compare again. > > On Wed, Aug 12, 2009 at 2:01 PM, F.B. ten Kate<folk...@bluenode.nl> wrote: > > > Yes i am atm, since it's just a quit check to run a query, but would > > this explain the SQL executing this slowly? > > > I know i'm not using any "best" practises and things, this is the > > first thing im doing with both NHibernate and EF. > > > Here is the code running it. > > > Configuration cfg = new Configuration(); > > cfg.Configure(); > > cfg.AddAssembly(typeof(Debiteur).Assembly); > > > ISessionFactory factory = cfg.BuildSessionFactory(); > > ISession session = factory.OpenSession(); > > > IList<Debiteur> lijst = session.CreateCriteria(typeof > > (Debiteur)).List<Debiteur>(); > > > dataGridView1.DataSource = lijst; > > > On 12 aug, 13:22, Kim Johansson <hagbarddenst...@gmail.com> wrote: > >> Are you creating a new SessionFactory each run? (SLOOOOOOOOOOOW!!!) > > >> You should use a single instance SessionFactory and just create new > >> sessions. > > >> F.B. ten Kate wrote: > >> > Hello there, im currently looking at some differences between both > >> > ORM's and to get a good feel for both i try to query from one table > >> > and simply drop all the data in a DataGridView. > > >> > Easy as pie right? > > >> > Now here is the different SQL's beeing generated > > >> > NHibernate: > > >> > "SELECT this_.Debiteur_ID as Debiteur1_0_0_, this_.Debiteurnaam as > >> > Debiteur2_0_0_, this_.Entiteit_ID as Entiteit3_0_0_, this_.Sorteernaam > >> > as Sorteern4_0_0_, this_.DatumWijziging as > >> > DatumWij5_0_0_, this_.Actief_NeeJa as Actief6_0_0_ FROM tbl_Debiteur > >> > this_" > > >> > Enitity Framework: > > >> > "SELECT > >> > [Extent1].[Actief_NeeJa] AS [Actief_NeeJa], > >> > [Extent1].[DatumWijziging] AS [DatumWijziging], > >> > [Extent1].[Debiteur_ID] AS [Debiteur_ID], > >> > [Extent1].[Debiteurnaam] AS [Debiteurnaam], > >> > [Extent1].[Entiteit_ID] AS [Entiteit_ID], > >> > [Extent1].[Sorteernaam] AS [Sorteernaam] > >> > FROM [dbo].[tbl_Debiteur] AS [Extent1]" > > >> > Okay, so sofar EF wins in readability atleast but i dont intend to > >> > actually look at the queries so i'm not worried. > > >> > I noticed that NHibernate was ALOT slower then EF, the reasons seemed > >> > like a mistery to me so i ran SQL Profiler. > > >> > When i run the NHibernate project the query runs for a duration of > >> > 19369 (milliseconds) > > >> > Then i run Enitity frame work which runs for a duration of 3621 > >> > (milliseconds) > > >> > (I clear caches between the different queries) > > >> > I then run the query in SQL Management Studio, The NHibernate has a > >> > duration of 4291 (milliseconds) > >> > I do the same for the Enitity framework which has a duration of 4291 > >> > (milliseconds) > > >> > Can anyone explain to me these durations? mostly the NHibernate time > >> > when running it from application code is HUGE. Eventhough the SQL is > >> > exactly the same... --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "nhusers" group. To post to this group, send email to nhusers@googlegroups.com To unsubscribe from this group, send email to nhusers+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/nhusers?hl=en -~----------~----~----~----~------~----~------~--~---