Je ne vois que des avantages pour l'architecture d'oignon par rapport à l'architecture à 3 couches où le BL avait la responsabilité d'appeler des méthodes sur DAL (ou une interface de DAL) pour faire CRUD. L'oignon a une meilleure séparation des préoccupations, la testabilité, la maintenabilité et est plus propre.
L'architecture de l'oignon est-elle en effet meilleure à tous égards et l'architecture à 3 couches est juste une ancienne façon de faire les choses, ou il y a des scénarios où je devrais préférer utiliser l'architecture à 3 couches, si oui - laquelle?