Thanks all. MattO - I am not comparing apples and oranges. By Visual Studio I meant the object. While debugging I used Autos/Locals/Watch to see whats populated and it populates the same row twice.
DWarrel - Thanks, helped a lot! On Aug 17, 6:54 am, John Davidson <[email protected]> wrote: > MOst likely "ghosts". > Seehttp://nhforge.org/blogs/nhibernate/archive/2008/10/20/how-test-your-.... > Searches on nhibernate ghostbusters will turn up more information > > John Davidson > > 2010/8/17 osman nuri katib <[email protected]> > > > > > Thank you but there is no problem in select statements..Update and Insert > > is problem. > > How can I figured out? > > > 2010/8/17 Dwarrel <[email protected]> > > > This is normal (though often confusing) behaviour of NHibernate when > >> using a query which contains a Join. You basically get as many items > >> back when you would for a SQL result. I created a wrapper function > >> around the list to only return met the unique items. So that when I > >> call Customer Join Purchases and want to iterate over the customers I > >> do only visit every customer object once. The same happens when you > >> use SetFetchmode Join in a ICriteria query. I am not sure why they > >> designed it like this, because it is puzzling at first but it seems > >> consistent. When you add all the results to a set it will > >> automatically un-duplicate. Have had big issues when setting > >> relationships using lists rather than sets with this thing! Suddenly > >> when using join load performance optimisations I got duplicates in the > >> collections, just like you describe above. > > >> Hope this helps, > >> Theo > > >> On Aug 15, 8:34 am, Kasi <[email protected]> wrote: > >> > The query (in the code), while running on SQL server returns the > >> > following result. > > >> > 53 10 _heading Supplier Sustainability > >> > Assessment 101 > >> > 53 10 _heading FR_SUST 102 > >> > 54 10 _tabHome Home 101 > >> > 55 10 _tabQuestionnaire Questionnaire 101 > >> > 56 10 _tabResults Results 101 > >> > 57 10 _tabResourcesFAQ Resources & FAQs > >> > 101 > > >> > But while running the code on visual studio returns the first row > >> > twice and instead of the second row - > > >> > 53 10 _heading Supplier Sustainability > >> > Assessment 101 > >> > 53 10 _heading Supplier Sustainability > >> > Assessment 101 > >> > 54 10 _tabHome Home 101 > >> > 55 10 _tabQuestionnaire Questionnaire 101 > >> > 56 10 _tabResults Results 101 > >> > 57 10 _tabResourcesFAQ Resources & FAQs > >> > 101 > > >> > I have no idea as to why. > > >> > Code. > > >> > private IList<WebpageElement> GetWBById(int id) > >> > { > >> > using (ISession session = NHibernateHelper.OpenSession()) > >> > using (ITransaction transaction = > >> > session.BeginTransaction()) > >> > { > >> > try > >> > { > >> > string sql = @" > >> > SELECT > >> > web_page_html_element.html_element_id, > >> > web_page_html_element.web_page_id, > >> > html_element.html_element_name, > >> > Html_Element_Text.html_element_txt, > >> > Html_Element_Text.language_code > >> > FROM Web_Page_Html_Element INNER JOIN > >> > Html_Element ON > >> > Web_Page_Html_Element.html_element_id = > >> > Html_Element.html_element_id INNER JOIN > >> > Html_Element_Text ON > >> > Html_Element.html_element_id = Html_Element_Text.html_element_id > >> > WHERE (Web_Page_Html_Element.web_page_id > >> > = :id)"; > > >> > ISQLQuery query = > >> > (ISQLQuery)session.CreateSQLQuery(sql) > >> > .SetInt32("id", id); > >> > var list = > >> > query.AddEntity(typeof(WebpageElement)).List<WebpageElement>(); > >> > return list; > >> > } > >> > finally > >> > { > >> > transaction.Commit(); > >> > } > >> > } > > >> > } > > >> > WebpageElement.CS > >> > public class WebpageElement > >> > { > >> > public virtual int Id { get; set; } > >> > public virtual int WebpageId { get; set; } > >> > public virtual string Name { get; set; } > >> > public virtual string Text { get; set; } > >> > public virtual string LanguageCode { get; set; } > > >> > public WebpageElement() { } > >> > } > > >> > WebpagElement.hbm.xml > >> > <class name="WebpageElement" table="web_page_html_element"> > >> > <id name="Id" column="html_element_id"> > >> > <generator class="native"/> > >> > </id> > >> > <property name ="WebpageId"> > >> > <column name="web_page_id"></column> > >> > </property> > >> > <join table="html_element"> > >> > <key column="html_element_id" /> > >> > <property name="Name"> > >> > <column name="html_element_name" /> > >> > </property> > >> > </join> > >> > <join table="html_element_text"> > >> > <key column="html_element_id"/> > >> > <property name="Text"> > >> > <column name="html_element_txt" /> > >> > </property> > >> > <property name="LanguageCode"> > >> > <column name="language_code" /> > >> > </property> > >> > </join> > >> > </class> > > >> -- > >> 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]<nhusers%[email protected] > >> > > >> . > >> For more options, visit this group at > >>http://groups.google.com/group/nhusers?hl=en. > > > -- > > Osman Nuri KATİB > > YTÜ > > Bilgisayar Mühendisliği > > > -- > > 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]<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.
