在ASP.NET MVC 3层体系结构应用程序中放置标识数据和设置的位置?

时间:2016-01-09 17:12:01

标签: asp.net-mvc architecture identity n-layer

我正在使用ASP.NET MVC应用程序,并试图将其转移到3层架构。我无法弄清楚在哪个层放置身份数据?我应该制作两个DB上下文(在两个层内)还是从表示层到DAL的引用?有人说PL和DAL之间不应该有参考。请给我一些提示?

感谢您的回答

1 个答案:

答案 0 :(得分:1)

我希望您在数据层中存储用户详细信息,密码和设置。但是数据层只需要知道表结构是什么以及如何访问它。业务层需要知道如何加密/解密密码以及可用的用户信息。然后,这将以数据传输对象的形式将该信息发送到表示层。表示层只需要以任何格式将用户和密码传递给业务层,并且可能需要知道有关业务层提供的用户的有限信息。表示层不需要知道表的结构或数据访问层如何读取该数据,并且数据层不需要知道它有权访问的数据实际意味着什么。业务层应该最了解系统如何作为一个整体运行,但它不应该关心数据如何在数据层中实际读取和写入,也不应该如何在表示层中显示和接受信息。

稍微犹豫了一下,但我认为这至少有些道理。