2012-03-13 166 views
3

我已經開始在新的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; } 
} 

我目前正在考慮只實施一個客戶存儲庫和用戶存儲庫並報廢會員提供商。所以我的問題是,有沒有一種直接的方式來實現我的會員模式與會員提供商?目前我的用戶類主要是通過自定義成員資格提供者實現的,但我不確定如何將客戶實體與成員資格提供者整合在一起。

此外,我使用流利Nhibernate,所以我寫我自己的持久代碼,無論我的方法。

+0

我現在在同一條船上。看起來,像試圖實現自定義MembershipProvider那樣,更容易扮演我自己的會員服務角色。 – blachniet 2012-03-26 18:52:00

+0

這就是我最終走向的方式。我現在有自己的會員服務工作,目前正在實施我自己的角色服務,該服務看起來很容易與認證類集成。 – 2012-03-27 12:03:03

+0

我放棄了開始我的項目。我認爲會有很多的實現,所以我在沒有計劃的情況下使用標準提供程序。我有一個你知道的截止日期。但我對這個話題非常感興趣,如果有人給出了一個高質量的答案,我將不勝感激。 – oruchreis 2012-03-27 22:58:29

回答

2

你可以看看我的博客文章創建custom membership provider。這裏有一個例子,它使用Linq-to-Sql,但我認爲它可以給你一個關於如何使用你的模型將數據保存在數據庫中的好主意。

相關問題