Walkthrough: Creating the Data Access and Business Logic.
ElYusubov's answer mostly nails it, domain logic should go into the model and application logic into the controller. Two clarifications: The term business logic is rather useless here, because it is ambiguous. Business logic is an umbrella term for all logic that business-people care about, separating it from mere technicalities like how to store stuff in a database or how to render it on a.
Business Access Layer (BAL) or Business Logic Layer (BLL): This Layer is the class in which we write functions that accepts data from Presentation Layer and send that data to database through Data Access Layer. Presentation layers must not directly access the data access layers.
Likewise, your domain service layer should know nothing about the business service layer but should know about your persistence layer. This couples the business layer to your controllers which means you cannot have a unit test for the business services independent of the controllers. Definitely a code smell.
Business Layer A BAL contains business logic, validations or calculations related to the data. Though a web site could talk to the data access layer directly, it usually goes through another layer called the Business Layer. The Business Layer is vital in that it validates the input conditions before calling a method from the data layer.
Scott then create a business class layer that encapsulates the DAL and adds additional business logic and validation to it. All of the samples then use the ASP.NET 2.0 ObjectDataSource control to bind against the business class layer, and show how to perform common binding operations against it.
ASP.NET Boilerplate as application framework.. EventCloud before running the migrations). I will follow some DDD (Domain Driven Design) techniques to create domain (business) layer and application layer. Event Cloud is a free SaaS (multi-tenant) application.. EventManager implements business (domain) logic for events. All Event operations.
Since business layer is our glue between UI and persistence, it is okay to instantiate instance of Business layer directly in the view layer. To make the abstraction complete, the business logic layer should define an abstract class or interface for the Data Access layer to implement.