2013-03-11 69 views
4

我使用SimpleMembership,並將它連接到我的用戶表,並且一切正常。但是,當我試圖從用戶ID INT改爲GUID,可我有錯誤:ASP.net MVC SimpleMembership

Cannot convert type 'System.Guid' to 'int' 

對於這些代碼:

WebSecurity.CreateUserAndAccount(model.Email, model.Password, 
new 
{ 
    Name = model.Name, 
    Surname = model.Surname, 
    Gender = model.Gender, 

} 
); 

在表webpages_OAuthMembership和webpages_Membership我已經改變了用戶ID從int到uniqueidentifier(代表guid),但沒有幫助。

因此,我可以爲用戶ID引導,如果我可以,如何? 如果我不能使用GUID,我可以使用BIGINT嗎?

+0

我不相信它的支持(但我希望它是)。您可能能夠實現您自己的接受GUID的SimpleMembershipProvider。 http://forums.asp.net/t/1856517.aspx/1?ASP+NET+MVC+4+Simple+Membership – ken 2013-03-11 16:01:12

+0

下面的文章表明,微軟正在研究解決方案,截至2013年1月。是否有人有任何解決方法呢? http://aspnet.uservoice.com/forums/41201-asp-net-mvc/suggestions/3573751-use-generic-types-for-userid-in-simple-membership- – 2013-05-15 21:06:39

+1

在您發佈的鏈接上有解決方案,Erik Porter將其發佈在評論中;)其他選項是建立自己的提供者。至少這是我迄今發現的 – hyperN 2013-05-16 06:37:44

回答

0

SimpleMembershipProvider的想法是,它很容易實現,因爲我通常開箱即用。不過,你必須與用戶表相處。如果你想使用你自己的用戶表,也許一些自制的密碼加密/解密等,你應該創建一個CustomMembershipProvider。藉此,您可以自定義所有內容以適應您現有的環境或數據庫。

相關問題