After evaluating various possible technologies and frameworks, we decided to go with OrchardCMS (an opensource cms built with asp.Net MVC) as a framework for our application. Though it is a CMS, it has been designed well and can be used as a core to any application.
You can make use of its ContentItem as a base for all your entities and hence get a lot of features out of the box - ACL, Dynamic Navigation, Logging, Caching, Indexing (Lucene), Localization, Scheduling, Workflows, Event Handlers, etc.
Also if you want to use it only as a framework then you can choose to write standard MVC models, controllers and views and use their nHibernate repositories to consume data. You dont have to worry about testing the core layers of your application as it is already tested for you.
The advantage of building on top of Orchard is that your application becomes very modular. You can build parts of your entire application as separate orchard modules. So even if orchard upgrades, upgrading your modules will be pretty straight forward. It isnt a very good idea to modify the core code of orchard as in the case with any open source project.
The version (1.x branch) has been ported to MVC5 and WepAPI2 and uses nHibernate as the ORM.
For more info on orchard and to get started visit http://www.orchardproject.net
UPDATE Dec 2018:
Would like to point out that ASP.NET Boilerplate is a fantastic framework to use for any such projects today!