【问题标题】:Custom MembershipProvider with Web interface and DAL具有 Web 界面和 DAL 的自定义 MembershipProvider
【发布时间】:2010-01-07 01:55:51
【问题描述】:

我正在开发一个包含 2 个项目的 ASP.NET 解决方案。一个是 Web 界面,另一个包含我的业务逻辑。我在第二个项目中使用 LINQ to SQL 进行数据访问。

除了我的数据库之外,我还有一个名为 Users 的表,其中包含用户信息。

我已经开始实施 MembershipProvider。我注意到 MembershipUser 与 MembershipProvider 相结合。让我的 BLL/DAL 谈论用户的最正确方法是什么? 我是否应该最低限度地实现 MembershipUser 并且每当用户调用一个方法时,它都会调用例如。 GetUserInfo() 在我的 BLL/DAL 中,以获取有关用户的完整信息?

或者我应该让 MembershipUser 类方法在 BLL/DAL 中调用我的自定义“用户”类方法(如包装器)(此自定义用户类与 linq 无关)?

或者我可以以某种方式将 Linq 扩展到 sql 类“CFUsers”以扩展 MembershipUser。

我希望这是有道理的。

【问题讨论】:

    标签: asp.net linq membership asp.net-membership custom-membershipprovider


    【解决方案1】:

    我通常认为这是一个单独的实体,因为 MembershipUser 围绕会员资格展开,这是一个普遍关注的问题,而您系统中的用户围绕您的域所需的任何内容展开,我确实看到您的观点,这两个实体可以包含在一个中,所以。个人资料绝对是最简单的方法。

    在 MSDN 文档中有一个演练 http://msdn2.microsoft.com/en-us/lib...US,VS.80).aspx 和一个 斯科特·格思里 (Scott Guthrie) 的精彩演练 http://weblogs.asp.net/scottgu/archi...18/427754.aspx

    一如既往,这取决于您的目标是什么。添加到配置文件是一种简单的机制 获取更多数据。它需要很少的定制方式和 使信息可轻松用于 Web 应用程序。这可能不是 您要存储此类数据的位置;如果没有,那就是非解决方案。

    如果这不合适,则从默认提供一个新的提供者(到 继承你已经拥有的)是一个很好的选择。 当然还有终极http://codesmart.wordpress.com/2009/03/27/extending-the-microsoft-aspnet-membership-provider/

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-05-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多