I want to write a program for warehousing.
Can anyone guide me in using a framework for the database layer?
I have used entity framework before but did not enjoy it because it throws many unknown errors.
Does anyone suggest NHibernate or any other framework, or do you think if I use straight queries or store procedures, it will be more reliable and better?
I don't think ORM is the best choice for this sort of problem.
The 'O' in ORM stands for 'object'. You don't want to have to create an object model just to move data into a warehouse.
ORM is more for developer convenience: to allow object-oriented programmers to forget the difference between instance-based objects on the middle tier and set-based relations on the database side. The SQL is generated by the ORM tool. It might not be what you'd want to move data.
I think the three letters you really need to dive into are ETL: Extract-Transfer-Load. That's the more typical approach used to move data from a transactional data store into a data warehouse.