Ask HN: Good open-source examples of properly tiered ASP.NET architectures.
https://news.ycombinator.com/item?id=899745After working with ASP.NET (C#) for around 3 years, 2 of which was with a company that had no real solid architecture, I've realized that I have a lot to learn when it comes to creating properly designed Web Applications.
I'm wondering if anyone has examples of open-source software that I could study, tutorials to walk-through or even a good book to pick up so that I can better understand this process.
A lot of the work I did at the aforementioned job was a (small) step in the right direction with trying to separate presentation from logic, but in most cases the Code Behind files for our pages were tightly coupled with the Database structure. They did use a database management object to handle the actual database call, connections, command, data adapters, etc, but the page itself was still constructing the query and sending it off to the database object to fetch.
Towards the end of my tenure there, we outsource a new product to a very capable team based out of Boston and I had the pleasure of working with their code for integration purposes. This is what "woke me up" to how we were going about things all wrong. Their designs had calls out to a Business Logic Layer, which then called a Data Access Layer, which returned objects, collections or just straight DataTable/Sets depending on the need.
What I still struggled with, in my own designs, is what goes in the business logic layer and what goes in the data access layer. When to use objects and when to not, etc. I know those questions are somewhat subjective and based on the project at hand, but I'd love a really good example or book that covers these exact techniques so that I can be a better programmer.
Obviously, pseudo code examples and open discussion on the topic is also very much welcomed.