【问题标题】:Custom membership provider or role my own implementation自定义会员提供者或角色我自己的实现
【发布时间】:2012-03-13 10:02:55
【问题描述】:

我已经开始在一个新的 asp.net mvc 项目中使用成员资格提供程序。我的会员模型与默认模型完全不同,但我认为我可以根据自己的喜好对其进行自定义。虽然我正在为我正在做的所有事情创建一个自定义实现,但这似乎是一种接缝。

我的模型有两种类型(从相同的基础继承)用户实体和客户实体。

public class Customer
{
    /* properties go here */

    // users linked with this customer
    public virtual IList<TypeOneUser> TypeOneUsers { get; set; }
    public virtual IList<TypeTwoUser> TypeTwoUsers { get; set; }
}

public abstract class User
{
    /* user properties go here */
}

public class TypeOneUser: User
{
    public virtual IList<Customer> Customers { get; set; }
}

public class TypeTwoUser: User
{
    public virtual Customer Customer { get; set; }
}

我目前正在考虑仅实施客户存储库和用户存储库并取消成员资格提供程序。所以我的问题是,有没有一种直接的方法可以通过会员提供者来实施我的会员模式?目前,我的 User 类主要使用自定义成员提供程序实现,但我不确定如何将 Customer 实体与成员提供程序集成。

我还在使用 Fluent Nhibernate,所以我正在编写自己的持久性代码,而不管我的方法是什么。

【问题讨论】:

  • 我现在在同一条船上。与尝试实现自定义 MembershipProvider 相比,扮演我自己的会员服务角色似乎更容易。
  • 这就是我最终要走的路。我现在有自己的会员服务,目前正在实施我自己的角色服务,它看起来很容易与身份验证类集成。
  • 我在项目开始时就放弃了。我认为会有很多实施,所以我在没有计划的情况下使用标准提供程序。我有一个你知道的最后期限。但我对这个话题很感兴趣,如果有人给出高质量的答案,我将不胜感激。

标签: asp.net-mvc asp.net-membership


【解决方案1】:

您可以查看我关于创建custom membership provider 的博文。那里有一个示例,它使用 Linq-to-Sql,但我认为它可以让您很好地了解如何使用模型将数据持久保存在数据库中。

【讨论】:

    猜你喜欢
    • 2011-12-26
    • 1970-01-01
    • 2017-07-26
    • 1970-01-01
    • 1970-01-01
    • 2010-10-20
    • 1970-01-01
    • 1970-01-01
    • 2013-09-26
    相关资源
    最近更新 更多