【发布时间】:2014-05-16 22:21:26
【问题描述】:
在包管理器控制台中,我在 azure 上针对我的数据库运行命令更新数据库,但我收到错误消息,提示 ConnectionString 属性尚未初始化。
我对本地数据库做了同样的事情,一切都很顺利。在我的网络配置中,我将连接字符串更改为我的天蓝色数据库,这是我的数据库上下文的样子:
public class MadLabsDatabaseContext : IdentityDbContext<User>
{
public MadLabsDatabaseContext()
: base("DefaultConnection")
{
Configuration.LazyLoadingEnabled = true;
}
protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
base.OnModelCreating(modelBuilder);
modelBuilder.Entity<IdentityUser>()
.ToTable("AspNetUsers");
modelBuilder.Entity<User>()
.ToTable("AspNetUsers");
}
}
这是 web.config 中的连接字符串:
<connectionStrings>
<add name="DefaultConnection" connectionString="Data Source=tcp:serverName.database.windows.net,1433;Database=madLabs_db;User ID=username;Password=password;Trusted_Connection=False;Encrypt=True;Connection Timeout=30;MultipleActiveResultSets=True;" providerName="System.Data.SqlClient" />
</connectionStrings>
这是我的包管理器控制台代码:
Update-database -ConnectionString "Data Source=tcp:serverName.database.windows.net,1433;Database=madLabs_db;User ID=userName;Password=password;Trusted_Connection=False;Encrypt=True;Connection Timeout=30;MultipleActiveResultSets=True;" -ConnectionProviderName "System.Data.SqlClient"
为什么会出现这个错误?
【问题讨论】:
-
你找到原因了吗?
-
不,我没有,我刚刚创建了一个新项目,并以同样的方式再次完成了整个工作,它成功了,也许我有一些愚蠢的错误,或者某个地方的错字
-
是 ASP Identity 2.0.0 造成的。我敢打赌,在您的新项目中,您现在正在运行 1.0.0。检查我的解决方案答案(实际上需要 5 秒才能修复,但我花了几个小时才找到它,当然,它一直就在我的眼皮底下!)stackoverflow.com/a/23130143/2790000
标签: c# asp.net-mvc azure asp.net-web-api