Today it is common place for many projects to leverage frameworks to help expedite development and reduce maintenance. The trend is for most projects utilize more than one framework and in many cases more than 5! Statistically, all frameworks have at least 5 bugs and lots of frameworks get discontinued, these are all things that need to be considered. Using a framework will force you to follow the rules. It’s very possible that you would like to use the framework in a way that it was not originally designed to be used. In other words, you need to implement a pattern that is not easy to implement with the framework. Frameworks require you to order from the “lunch menu”.
The most important element to choosing a framework is to first have a good software architecture in-place and chose a framework that fits the software architecture. Leading with software architecture will make the process of choosing a framework much easier.
I would encourage you to listen to Sander Hoogendoorn’s TechEd presentation on this topic, he has 20 years of experience developing frameworks. His presentation will give you a new perspective on the pervasive use of frameworks we are seeing today.