我有一个位于App_Data文件夹的数据库,其下面是连接字符串:
<add name="DefaultConnection" connectionString="Data Source=(LocalDb)\MSSQLLocalDB;AttachDbFilename=|DataDirectory|\aspnet-mydb-20171102055914.mdf;Initial Catalog=aspnet-mydb-20171102055914;Integrated Security=True"
providerName="System.Data.SqlClient" />
我已经将它用于Asp Identity User Manager Model。
public class ApplicationDbContext : IdentityDbContext<ApplicationUser>
{
public ApplicationDbContext()
: base("DefaultConnection", throwIfV1Schema: false)
{
}
public static ApplicationDbContext Create()
{
return new ApplicationDbContext();
}
}
但我想使用位于服务器中的数据库。我的服务器连接字符串结构类似于:
<add name="DefaultConnection" connectionString="metadata=res://*/Models.Database.mydbModel.csdl|res://*/Models.Database.mydbModel.ssdl|res://*/Models.Database.mydbModel.msl;provider=System.Data.SqlClient;provider connection string='data source=134.54.96.45,1355;initial catalog=Db_Server;user id="serverUser";password=serverPass;MultipleActiveResultSets=True;App=EntityFramework'" providerName="System.Data.EntityClient" />
服务器连接字符串可以正常用于其他模型。但是当我想使用ASP Identity Model时,它会导致错误。我怎么解决不了?
答案 0 :(得分:0)
我通过创建一个标准连接字符串来修复此问题,该字符串指向ASP.NET标识表所在的数据库。
<add name="DefaultConnection" connectionString="Data Source=134.54.96.45,1355; Initial Catalog=Db_Server; User ID="serverUser"; Password=serverPass; Connect Timeout=60;" providerName="System.Data.SqlClient" />
我不知道为什么Identity Model只使用这个连接字符串以及这些连接字符串之间的不同之处。
但这最后对我来说是正确的。