I am a Java developer making the transition to the C # world. I got a pretty good ASP.NET MVC descriptor (and can compare / compare it with the concepts I learned for Struts).
However, I am looking for tips on how to structure the project. I currently have two solutions in the project: the MVC web application and the ClassLibrary section.
The application uses a layered architecture: controllers / services / DAO. In order for everything to work “correctly”, I have the Controller and Model classes in the MVC solution, as well as the services, DAO and security in the ClassLibrary solution. Unfortunately, this causes all sorts of minor issues (for example: extending a UserAccount object from the Entity Framework on the ClassLibrary side is ambiguous when I try to expand it on the MVC side to validate the form).
The only solution I can come up with is to put EVERYTHING in the MVC project and organize what is currently in the ClassLibrary in the App_Code folder. This will solve some problems, but it seems to me that this is wrong. my Java projects split the code into the src directory and the views (jsp's) in the tappa webapp directory.
What do some of the more experienced .NET developers think?