2010-08-03 20 views
0

我想在我的應用程序中創建用戶之間的關聯。例如,有一個項目總監(角色:PD),其中有許多居民(角色:居民),同樣,每個PD都有一個APD(角色:Asistant項目總監)。ASP.NET用戶之間的關聯成員

對於每個PD,我只想向他展示那些屬於他的居民,即我想過濾給定PD的居民。我可以通過駐留角色過濾用戶(通過使用GetAllUsers()& GetUsersInRole()方法)的組合,但似乎無法通過其程序主管篩選居民,因爲我無法在成員身份中的兩種角色類型之間建立關聯表。

我該怎麼做才能擁有這種功能?我是否需要擴展角色提供者來處理這個問題?

+0

所以我想到了我只是需要一個數據庫表,將保存用戶之間的關係。 – skhan 2010-08-03 12:11:41

回答

0

這聽起來更像是對象之間的數據關係,而不是提供者的擴展。角色基本上是一組用戶類型而不是實際用戶。

我會使用額外的表格來處理這個問題,以定義PD與其居民之間的關係,並使用角色設計管理頁面,例如顯示角色PD中的所有用戶,以及顯示所有用戶角色駐留到分配

+0

好吧,我知道我需要一個額外的表來保存用戶之間的關係。因爲我需要像GetUsersByPD(pdname)這樣的新檢索方法,我應該在哪裏編寫這些方法?最好這些新的方法應該進入從成員資格派生的類,但由於成員類不能被繼承,這些新的用戶檢索方法會去哪裏? – skhan 2010-08-03 16:48:02

+0

很難說如何在不瞭解更多關於您的系統的情況下最好地實現,但是我會採取的方法是與會員提供者分開進行。如果您需要它們之間的鏈接,則可以加入UserId,並且您甚至可以爲常駐和PD創建單獨的表,並再次加入UserId。我發現將用戶視爲任何其他對象,而不是爭取進入成員框架 – Macros 2010-08-03 16:58:40

+0

感謝Macros,現在我已經瞭解了一些事情。 – skhan 2010-08-03 18:18:56

0

我認爲你不是真的想在角色之間創建關聯,而是在用戶之間建立關聯(即PD用戶將擁有許多常駐用戶,但PD角色不會有許多常駐角色)。

我不認爲有內置的方法來做到這一點,但建立自己的數據庫表來保存用戶之間的關係不應該太難。

+0

是的你是對的,它在用戶之間而不是在角色之間建立聯繫,謝謝! – skhan 2010-08-03 12:03:53