2013-10-26 46 views
4

默認情況下,ASP.NET身份用戶數據存儲在mdf文件中。將ASP.NET身份存儲移至EF Sql數據庫

我希望將數據存儲在SQL數據庫中,以便我在改變了defaultconnection字符串我web.config我的EF基於連接:

<add name="DefaultConnection" connectionString="metadata=res://*/Models.StartifyModel.csdl|res://*/Models.StartifyModel.ssdl|res://*/Models.StartifyModel.msl;provider=System.Data.SqlClient;provider connection string=&quot;data source=MYPC\SQLEXPRESS;initial catalog=mydb;integrated security=True;MultipleActiveResultSets=True;App=EntityFramework&quot;" providerName="System.Data.EntityClient" /> 

現在我只要我想要得到的錯誤The entity type ApplicationUser is not part of the model for the current context.註冊用戶。

我使用VS2013的默認MVC5項目模板。

回答

7

請嘗試指定格式的連接字符串:

<add name="DefaultConnection" connectionString="Data Source=127.0.0.1, 1433;Initial Catalog=YourDB;User Id=XXXX;Password=XXXXX;Asynchronous Processing=True;Encrypt=False;TrustServerCertificate=True;Persist Security Info=True" providerName="System.Data.SqlClient" /> 

並確保在型號/ IdentityModels.cs你有

public class ApplicationDbContext : IdentityDbContext<ApplicationUser> 
    { 
     public ApplicationDbContext() 
      : base("DefaultConnection") 
     { 
     } 
+2

我還有這個連接字符串同樣的問題。 – daniel

+0

我創建了一個新項目,現在它可以工作。我在AccountController中遇到了一些問題。 – daniel

+2

如果您要更改爲非EF連接字符串,則根據您的示例,您將得到'「關鍵字不支持:'data source'」',因爲它不是EF連接的有效連接字符串( EF數據庫是在問題中指定的)。這不是所問問題的正確答案,只會混淆問題。 *請修改或刪除它。* –

相關問題