I have read quite a few posts on SO and around the web of the benefits and features of various WPF Frameworks (Caliburn, Prism) and Module Frameworks (MEF, Unity) and combining them.
In theory, I love the ideas behind them. And I know once I get a grasp on those systems, that it may actually increase development speed - but the upfront cost of learning tools and frameworks with that level of complexity seems high.
Project Background:
I am taking a 10-year old series of Access databases (with an enormous amount of bad macro code) and redesigning the database. On top of that, I want to come up with the best way to display and present that information. Using Access (2007) is an option, but not one I would like to use.
The company I am working for is a small to medium size business and the app will have about 40-80 concurrent users during the work day. This is the reason I would like to avoid Access.
I am currently using the Model-First feature of Entity Framework 4 (SQL Server 2008 R2) and .NET 4 (C#/WPF).
Dilemma:
The high level of design for the new database is permission based (a role is simply a collection of permissions) and I want the UI to show the information/edit buttons/etc based on these permissions. If I go for a standard approach, the code would be littered with if/else statements. However, if I go with a large framework - I feel it is overkill for what is basically a database access layer - especially given the high upfront learning curve. Not to mention I'm not 100% sure these frameworks would help me in the way I beleive they will.
The Question:
I am looking for some discussion as to whether these frameworks are worth the learning curve in a small-scale, "database layer" type applications.
In addition, if they are considered overkill, are there any frameworks that COULD help with this type of system? I have considered transitioning the UI to the web which seems perfect (and is more my expertise).
Thanks for your time.