2014-10-30 166 views
0

我想了解如何在測試mvc應用程序中使用Sql角色提供程序。我已經配置了web.config文件,並連接到一個預先存在的sql server數據庫(意思是我不是創建它的那個)。Roles.CreateRole插入失敗

 protected void Application_Start() 
     {  
      if (Roles.RoleExists("Admin") == false) 
      { 
       Roles.CreateRole("Admin"); 
       Roles.AddUserToRole("DOMAIN\\username", "Admin"); 
      } 
     } 

此代碼對Roles.CreateRole失敗Cannot insert the value NULL into column 'RoleId'。從我所讀到的,這個值應該是自動生成的。是這樣嗎?我是否需要將RoleId更改爲身份,是的?

回答

0

爲了解身份mvc5與此例嘗試是很清楚

創建一個空的C#的Web應用程序,並下載

PM>安裝,包裝Microsoft.AspNet.Identity.Samples - 預

數據庫首先是代碼,它是自動創建的,在webconfig中更改連接字符串以進行更改,其中創建數據庫在哪裏。

此示例包含有關用戶和角色的詳細信息的所有功能:

在vs2013 mvc5樣本不包含所有功能的使用角色。需要做更多的工作,開始

http://typecastexception.com/post/2014/06/22/ASPNET-Identity-20-Customizing-Users-and-Roles.aspx

+0

雖然這種聯繫可以回答這個問題,最好是在這裏有答案的主要部件,並提供鏈接以供參考。如果鏈接頁面更改,則僅鏈接答案可能會失效。 – borjab 2014-10-30 17:04:42

+0

哦,我編輯它更好? – Pablote 2014-11-03 17:27:04

+1

當然。您的問題出現在審覈隊列中以顯示S.O.對新用戶的做法。 – borjab 2014-11-03 17:36:03

0

啓用webconfig文件rolemanger。 修改或項目中的webconfig文件 創建下面的代碼,然後嘗試在同一

<system.web> 
<roleManager enabled="true" /> 
</system.web> 
+0

我已經這樣做了。不過謝謝你。 – user3738893 2014-10-31 14:18:35