相关疑难解决方法(0)

ASP.Net Identity如何设置目标DB?

我正在使用Asp-Team 的ASP.NET Identity Sample,我正在尝试更改数据库IdentityDbContext...

我用构造函数试了一下

public MyDbContext() : base("MyConnectionString") { } // base is IdentityDbContext
Run Code Online (Sandbox Code Playgroud)

和DbContext类一样.

这很有效,直到我尝试注册用户...

await IdentityStore.CreateLocalUser(user, model.Password)
Run Code Online (Sandbox Code Playgroud)

返回false......没有错误,没有.

任何想法如何解决?

编辑:

文件名是Models\AppModel.cs,有MyDbContext class

原来是

public class MyDbContext : IdentityDbContext<MyUser, UserClaim, UserSecret, UserLogin, Role, UserRole>
{
}
Run Code Online (Sandbox Code Playgroud)

我改成了

public class MyDbContext : IdentityDbContext<MyUser, UserClaim, UserSecret, UserLogin, Role, UserRole>
{
    public MyDbContext() : base("MyConnectionString") { }
}
Run Code Online (Sandbox Code Playgroud)

连接字符串正在工作,因为我有其他项目使用相同,他们运行正常.

<connectionStrings>
    <add name="MySailorContext" connectionString="Data Source=THOMAS-LAPTOP;Initial Catalog=MySailor;Integrated Security=True;Pooling=False;MultipleActiveResultSets=true" providerName="System.Data.SqlClient"/>
</connectionStrings>
Run Code Online (Sandbox Code Playgroud)

c# asp.net asp.net-mvc asp.net-identity

23
推荐指数
2
解决办法
5万
查看次数

如何设置ASP.NET标识以使用我自己的连接字符串?

我有一个使用EF的MVC5应用程序.我想添加ASP.NET身份,我注意到ASP.NET身份的连接字符串使用"DefaultConnection".什么我需要做的,这样ASP.NET身份表在我现有的数据库创建(来源= DILS-S1301;初始目录= MVC5;)在指定MVC5Entities和NOT DefaultConnection => (LocalDb)\v11.0?谢谢

<connectionStrings>
    <add name="DefaultConnection" connectionString="Data Source=(LocalDb)\v11.0;AttachDbFilename=|DataDirectory|\aspnet-MySuperAwesomeMVCApp-20131105011429.mdf;Initial Catalog=aspnet-MySuperAwesomeMVCApp-20131105011429;Integrated Security=True" providerName="System.Data.SqlClient"      />
    <add name="MVC5Entities" connectionString="metadata=res://*/Models.Mvc5Model.csdl|res://*/Models.Mvc5Model.ssdl|res://*/Models.Mvc5Model.msl;provider=System.Data.SqlClient;provider connection string=&quot;data source=DILS-S1301;initial catalog=MVC5;integrated security=True;MultipleActiveResultSets=True;App=EntityFramework&quot;" providerName="System.Data.EntityClient" />
</connectionStrings>
Run Code Online (Sandbox Code Playgroud)

我尝试修改"DefaultConnection",如下所示:

<connectionStrings>
    <add name="DefaultConnection" connectionString="Data Source=DILS-S1301;AttachDbFilename=|DataDirectory|\MVC5.mdf;Initial Catalog=MVC5;Integrated Security=True" providerName="System.Data.SqlClient" />
    <add name="MVC5Entities" connectionString="metadata=res://*/Models.Mvc5Model.csdl|res://*/Models.Mvc5Model.ssdl|res://*/Models.Mvc5Model.msl;provider=System.Data.SqlClient;provider connection string=&quot;data source=DILS-S1301;initial catalog=MVC5;integrated security=True;MultipleActiveResultSets=True;App=EntityFramework&quot;" providerName="System.Data.EntityClient" />
</connectionStrings>
Run Code Online (Sandbox Code Playgroud)

但现在我收到一个错误:

Database 'C:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\DATA\MVC5.mdf' already exists. Choose a different database name.
Cannot attach the file 'C:\Users\blah\Documents\Visual Studio 2013\Projects\MySuperAwesomeMVCApp\MySuperAwesomeMVCApp\App_Data\MVC5.mdf' as database 'MVC5'.
Run Code Online (Sandbox Code Playgroud)

asp.net-mvc asp.net-mvc-5 asp.net-identity

23
推荐指数
2
解决办法
3万
查看次数