I'm working with a legacy system that I'm experimenting with adding NHibernate to. I have class that I need to be mapped to a table, but it has lots of existing methods that are not virtual.
I discovered that I can get NHibernate to load the mapping successfully even with the non-virtual methods present if I set the "lazy" attribute on the class element of the mapping file to "false". I'm wondering what impact this will have on my use of NHibernate with this class.
I understand the meaning of non-lazy loading on collections that belong to an object, but I'm not clear on the meaning of what lazy or eager loading on a class would be. Does that mean all collections belonging to that object would be eager-loaded? Or does it mean that NHibernate no longer uses a dynamic proxy in place of the actual class? Something else?
Also, what's the best course of action here? Is setting that lazy=false value inadvisable? Should I create an interface that the class implements, and then map that to the table? Or should I just bite the bullet and mark all the existing methods on the class virtual?
Thanks in advance for any and all advice!