2017-03-04 39 views
0

如何使用簡單成員關係存儲不同的用戶信息集?例如。我分別有兩個角色(醫生和病人)。爲兩個角色存儲的擴展用戶信息有所不同。簡單成員資格默認創建一個UserProfile表,我想分成兩個表來分別容納兩個角色的用戶信息。如何使用ASP.NET MVC存儲不同的用戶信息集簡單成員關係

請建議是否以及如何實現。

謝謝。

回答

0

您在「角色」表中定義了角色。然後,對於特定的用戶,UserId和RoleId在另一個名爲'_UserInRoles'的表中相互關聯。現在,創建可能命名爲「UserAdditionalInfo」和下面

Id(PK) 
UserId(FK) 
RoleId(FK) 
Column1 
Column2 

現在,你可以根據它的另一個表角色ID和用戶名和保存用戶的其他數據 化妝表結構的另一個表時,你需要顯示用戶信息在前端,那麼可能你可以在這些表中使用JOIN並返回信息。

+0

謝謝。請注意,除了自動創建的成員表之外,我有兩個表來存儲基於角色的擴展信息。一個是UserProfile(將用於存儲醫生),另一個是PatientsProfile(用於存儲患者信息)。現在,當我在添加患者時調用WebSecurity.CreateUserandAccount方法時,我想向PatientProfile添加一條記錄。但是,記錄將被添加到UserProfile中。我試圖使用WebSecurity.CreateAccount,但它導致錯誤提供程序遇到未知錯誤。想法? – Jason

+0

如果你想這樣做,那麼你將不會使用角色功能。所以,我建議你有兩張不同的表格,一張是醫生,另一張是病人。現在,要在數據庫表中添加患者,可以使用LINQ查詢,而不是使用「WebSecurity.CreateUserandAccount()」,並且該查詢將在您的表中創建患者行。如果上面的答案有幫助,那麼請接受該答案或讓我知道這個評論是否有幫助,然後我可以編輯我的答案,這樣可以幫助別人。 –

+0

感謝您的回覆。你的意思是說我不應該在這種情況下使用SimpleMemberships,並在兩個不同的表中爲我自己的不同角色處理帳戶管理?如果使用SimpleMemberships並嘗試使用WebSecurity.CreateUserandAccount創建帳戶,則將在成員資格表和UserProfile表中創建一行,該表具有僅存儲醫生信息的結構。所以我在嘗試添加患者時無法使用這種方法。 – Jason

相關問題