Many people will tell you how to do this. I am going to answer why you do not want this.
In the N-level system, all levels work semi-automatically. But this does not mean that they can - or should - rely on another level to ensure consistency and reliability of the data.
There are two main reasons. First, the N-tier system can expand. For example, in a web system, a new interface can use the existing web layer so that something is never thought of in the original design. Thus, you design your system, allowing something new to come to some midpoint in the levels.
Secondly, validation is often most effective than closer to the user. If I am in a browser-based solution, and I entered the wrong password in the double-entry verification field, I would like the browser to indicate this right away. Round-trip waiting takes time and user frustration.
Now take the same example and move it to the logical level. The logic level, not quite sure who sends it, wants to make sure that it receives two matching passwords. Therefore, it also checks and returns an error if they do not match. This protects data from bad changes.
This is just a philosophy, but in the past it worked well for me.
source share