ASP.NET MVC – Should business logic exist in controllers?

Business logic should really be in the model. You should be aiming for fat models, skinny controllers. For example, instead of having: public interface IOrderService{ int CalculateTotal(Order order); } I would rather have: public class Order{ int CalculateTotal(ITaxService service){…} } This assumes that tax is calculate by an external service, and requires your model to … Read more