{"id":413,"date":"2011-03-23T11:32:22","date_gmt":"2011-03-23T17:32:22","guid":{"rendered":"http:\/\/jameskovacs.com\/2011\/03\/23\/whats-new-in-nhibernate-3-at-calgary-net-user-group-wrap-up\/"},"modified":"2011-03-23T11:32:22","modified_gmt":"2011-03-23T17:32:22","slug":"whats-new-in-nhibernate-3-at-calgary-net-user-group-wrap-up","status":"publish","type":"post","link":"https:\/\/www.jameskovacs.com\/index.php\/2011\/03\/23\/whats-new-in-nhibernate-3-at-calgary-net-user-group-wrap-up\/","title":{"rendered":"What\u2019s New in NHibernate 3? at Calgary .NET User Group Wrap-up"},"content":{"rendered":"<p><a href=\"https:\/\/www.jameskovacs.com\/wp-content\/uploads\/2011\/03\/image13.png\"><img loading=\"lazy\" decoding=\"async\" style=\"background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: right; border-top: 0px; border-right: 0px; padding-top: 0px\" title=\"image\" border=\"0\" alt=\"image\" align=\"right\" src=\"https:\/\/www.jameskovacs.com\/wp-content\/uploads\/2011\/03\/image_thumb1.png\" width=\"244\" height=\"68\" \/><\/a>Thanks to everyone who came out to see <a href=\"http:\/\/www.dotnetcalgary.com\/Events\/tabid\/61\/ModuleID\/381\/ItemID\/4\/mctl\/EventDetails\/Default.aspx\">\u201cWhat\u2019s New in NHibernate 3?\u201d<\/a> at the <a href=\"http:\/\/dotnetcalgary.com\">Calgary .NET User Group<\/a> last night. I had a fun time sharing all the new tidbits available in NHibernate 3 including\u2026<\/p>\n<ul>\n<li><a href=\"http:\/\/jameskovacs.com\/2011\/02\/24\/net-client-profile-support-in-nhibernate-3\/\">.NET Client Profile support<\/a><\/li>\n<li><a href=\"http:\/\/jameskovacs.com\/2011\/01\/21\/loquacious-configuration-in-nhibernate-3\/\">Loquacious configuration<\/a><\/li>\n<li><a href=\"http:\/\/jameskovacs.com\/2011\/01\/26\/datetime-support-in-nhibernate\/\">Support for new data types<\/a><\/li>\n<li><a href=\"http:\/\/ayende.com\/Blog\/archive\/2010\/01\/27\/nhibernate-new-feature-lazy-properties.aspx\">Lazy-loaded properties<\/a><\/li>\n<li>Built-in LINQ provider via Query&lt;T&gt;()<\/li>\n<li>Strongly-typed Criteria via QueryOver&lt;T&gt;()<\/li>\n<li><a href=\"http:\/\/jameskovacs.com\/2011\/02\/16\/getload-polymorphism-in-nhibernate-3\/\">Get\/Load polymorphism<\/a><\/li>\n<\/ul>\n<p>I also talked about a few changes coming in NHibernate 3.2 including\u2026<\/p>\n<ul>\n<li><a href=\"http:\/\/fabiomaulo.blogspot.com\/2011\/03\/nhibernate-32-batching-improvement.html\">Improved batch update support<\/a><\/li>\n<li>Built-in ProxyFactoryFactory<\/li>\n<\/ul>\n<p>A few folks asked why I chose to use hbm.xml files rather than <a href=\"http:\/\/fluentnhibernate.org\">Fluent NHibernate<\/a>. I used hbm.xml files because I wanted to focus on new NHibernate features. In my projects, I often use Fluent NHibernate\u2019s ClassMap&lt;T&gt; and\/or automapping. (<a href=\"http:\/\/code.google.com\/p\/codeconform\/\">ConfORM<\/a> is another option for automapping, which worth considering.) And <a href=\"http:\/\/wiki.fluentnhibernate.org\/Persistence_specification_testing\">PersistenceSpecification&lt;T&gt;<\/a> from Fluent NHibernate is da bomb! Great way to test your mappings whether or not you\u2019re using Fluent NHibernate.<\/p>\n<p>You can find the slidedeck <a href=\"http:\/\/jameskovacs.com\/downloads\/WhatsNewInNH3.pptx\">here<\/a> and the demos <a href=\"http:\/\/jameskovacs.com\/downloads\/WhatsNewInNH3-demos.zip\">here<\/a>.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Thanks to everyone who came out to see \u201cWhat\u2019s New in NHibernate 3?\u201d at the Calgary .NET User Group last night. I had a fun time sharing all the new tidbits available in NHibernate 3 including\u2026 .NET Client Profile support Loquacious configuration Support for new data types Lazy-loaded properties Built-in LINQ provider via Query&lt;T&gt;() Strongly-typed [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[12],"tags":[],"class_list":["post-413","post","type-post","status-publish","format-standard","hentry","category-nhibernate"],"_links":{"self":[{"href":"https:\/\/www.jameskovacs.com\/index.php\/wp-json\/wp\/v2\/posts\/413","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.jameskovacs.com\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.jameskovacs.com\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.jameskovacs.com\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.jameskovacs.com\/index.php\/wp-json\/wp\/v2\/comments?post=413"}],"version-history":[{"count":0,"href":"https:\/\/www.jameskovacs.com\/index.php\/wp-json\/wp\/v2\/posts\/413\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.jameskovacs.com\/index.php\/wp-json\/wp\/v2\/media?parent=413"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.jameskovacs.com\/index.php\/wp-json\/wp\/v2\/categories?post=413"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.jameskovacs.com\/index.php\/wp-json\/wp\/v2\/tags?post=413"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}