I'm trying to make simple 3-tier architecture application with ASP.NET and C#. I walked to an problem with circular dependency. I have Student Class at Business tier. I have an interface to presentation tier with those methods:
void SaveStudent(Student student);
Student[] GetStudents();
This looks like ok.
But I have also interface from Data Access tier to Business with those methods:
void InsertStudent(Student student);
Student[] ReadAllStudents();
The problem is with Student class. Because my Business tier depends on DAL, I cannot put reference to Business tier from my data access layer. I know that DAL should not depend from Business tier. But don't know how to solve that problem.
How should I pass the data then?
If I place Student class to DAL then my presentation tier would be forced to depends on data access layer which isn't good.
I never tried to make 3 tier architecture before.
How to solve this problem? Be free to change my interface methods if it is needed.