我在我的项目中添加了一个ADO.NET实体数据模型,它在app.config中创建了一个连接字符串,如下所示:
<add name="KeyTranslatorEntities" connectionString="metadata=res://*/DAL.Model.csdl|res://*/DAL.Model.ssdl|res://*/DAL.Model.msl;provider=System.Data.SqlClient;provider connection string="data source=ZZZZZ.database.windows.net,1433;initial catalog=KeyTranslator;persist security info=True;user id=YYYYY;password=XXXXX;MultipleActiveResultSets=True;App=EntityFramework"" providerName="System.Data.EntityClient" />
它还生成了类KeyTranslatorEntities,它继承自DbContext并具有此默认构造函数:
public KeyTranslatorEntities()
: base("name=KeyTranslatorEntities")
{
}
我使用默认生成的构造函数创建KeyTranslatorEntities,但在检查时,实例使用连接字符串:
"data source=localhost;initial catalog=KeyTranslator;integrated security=True;MultipleActiveResultSets=True;App=EntityFramework"
为什么没有使用正确的连接字符串?
答案 0 :(得分:1)
问题在于解决方案包含两个不同的项目。一个包含EntityFramework代码,另一个包含依赖于另一个项目的WebService项目。 WebService项目包含正在使用的第一个连接字符串。
获得的经验教训:确保启动项目的配置文件已更新。