2

我正在開發ASP.NET MVC 4網站,並使用Microsoft ASP.NET Universal Providers。我打算部署到Windows Azure並使用SQL數據庫。爲了初始化本地SQL Server 2008數據庫上的成員資格,配置文件和角色,我通過ASP.NET Web站點管理工具創建了一個新用戶。我如何初始化會話?ASP.NET通用提供程序和會話狀態

當我的應用程序運行時,自然我得到一個SqlException,說「無效的對象名稱dbo.Sessions。」在Windows Azure上進行測試時,這不是問題; dbo.Sessions是自動創建的。從Azure上的dbo.Sessions生成一個創建表腳本並將其應用到本地SQL數據庫後,我可以在本地運行。

的web.config:

<membership hashAlgorithmType="SHA1" defaultProvider="DefaultMembershipProvider"> 
    <providers> 
    <clear /> 
    <add name="DefaultMembershipProvider" type="System.Web.Providers.DefaultMembershipProvider" connectionStringName="DefaultConnection" enablePasswordRetrieval="false" enablePasswordReset="true" passwordFormat="Hashed" requiresQuestionAndAnswer="false" requiresUniqueEmail="true" maxInvalidPasswordAttempts="5" minRequiredPasswordLength="6" minRequiredNonalphanumericCharacters="0" passwordAttemptWindow="10" applicationName="/" /> 
    </providers> 
</membership> 
<profile enabled="false" defaultProvider="DefaultProfileProvider"> 
    <providers> 
    <clear /> 
    <add name="DefaultProfileProvider" type="System.Web.Providers.DefaultProfileProvider" connectionStringName="DefaultConnection" applicationName="/" /> 
    </providers> 
</profile> 
<roleManager enabled="false" defaultProvider="DefaultRoleProvider"> 
    <providers> 
    <clear /> 
    <add name="DefaultRoleProvider" type="System.Web.Providers.DefaultRoleProvider" connectionStringName="DefaultConnection" applicationName="/" /> 
    </providers> 
</roleManager> 
<sessionState mode="Custom" customProvider="DefaultSessionProvider"> 
    <providers> 
    <add name="DefaultSessionProvider" type="System.Web.Providers.DefaultSessionStateProvider, System.Web.Providers" connectionStringName="DefaultConnection" applicationName="/" /> 
    </providers> 
</sessionState> 

回答

2

本文進入老aspnet_Memembership之間的差異更詳細對全球供應商。

http://dotnet.dzone.com/articles/stronger-password-hashing-net

從文章的要點:

首先,有沒有更多aspnet_regsql,你只要確保你的連接字符串設置和帳戶具有DBO權限(不用擔心,它不必保持這種方式)然後運行應用程序並嘗試執行任何操作這應該導致會員提供商擊中數據庫(即登錄 - 沒有問題,沒有帳戶)。

這就是它的一切,當它工作。

+0

有一件事讓我幾乎瘋狂。我正在使用Studio 2012和IIS Express進行配置,並在配置中做了錯誤的處理。我稍後修復了它,但例外情況並未消失。一時興起,我關閉了正在運行的IIS Express實例 - 然後運行。我假設它在某處存儲了一個標誌,並說表格應該已經存在。 – Rolf

相關問題