2014-11-20 114 views
1

我導入了一個MVC 4項目,該項目使用角色來控制訪問不同頁面和塊的權限。我正在使用Visual Studio Express 2013 for Web with Update 4.ASP.NET MVC角色

但是,當我運行項目(我還沒有修改任何東西)時出現以下錯誤。它使用語句@if (Roles.IsUserInRole("[RoleName]")來顯示頁面的某些部分。

System.Data.SqlClient.SqlException : {"Invalid objet name 'webpages_UsersInRoles'."}

我相信這可能是因爲數據庫是空的(因此沒有角色已定義)。但是,我嘗試手動添加角色並將它們分配給使用服務器資源管理器的用戶

我能夠使用MVC模板頁面進行登錄和註冊,但是當我打開包含該語句的任何頁面時,出現錯誤和應用程序崩潰。

感謝

+0

您是否嘗試過在函數「IsUserInRole」處設置斷點並查看它正在嘗試使用哪個對象'webpages_UsersInRoles 「?如果它是表/存儲過程,則需要在數據庫中創建對象 – LogicaLInsanity 2014-11-20 17:41:24

回答

0

如果這個程序的目的是使用Windows身份驗證,並且您IIS下運行它表達出來可能是因爲轉向窗戶認證標誌作爲簡單的「真」。

+0

它不使用Windows身份驗證。 – 2014-11-20 18:44:56

0

當表,存儲過程丟失時,無效的objet名稱錯誤與sql server相關。 只需檢查數據庫是否存在表[數據庫]。[模式]。[表名]