Hello, I am writing code that needs to treat the database in a database- agnostic way. There is no domain model per-se so I cannot use NHibernate directly but I would like to look at how NHibernate does it's database agnosticism and then maybe re-use that part of it.
Is there an overview somewhere specifically of this part of the architecture? If not, can someone help me out with understanding it? Specifically the questions that I have at this moment are: 1) Does NHibernate have an abstraction layer between the domain objects and database-specific queries? Where is it and what does it roughly look like? 2) What exactly is the flow from an hql query to sql? 3) What are the components that translate the abstraction to generate the final sql? 4) Is there a separate area where the tests for all this are located?
