实体框架引发无效操作异常-在app.config中找不到连接字符串
本文关键字:config app 找不到 字符串 连接 框架 无效 异常 操作 实体 | 更新日期: 2023-09-27 18:20:14
我从数据库中添加了一个新的ADO.NET数据模型,一切都很好。
然后我试着打电话去拿其中一张桌子:
public Sensor[] GetAllRegisteredSensors()
{
using (var context = new ClientSensorLocationEntities())
{
try
{
return context.Sensors.ToArray();
}
catch (Exception ex)
{
throw;
}
}
}
我得到一个例外:
无法找到名为"ClientSensorLocationEntities"的连接字符串在应用程序配置文件中找到。
非常不言自明,然后我转到我的app.config
文件,它看起来像这样:
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<connectionStrings>
<add name="ClientSensorLocationEntities" connectionString="metadata=res://*/ClientSensorLocationModel.csdl|res://*/ClientSensorLocationModel.ssdl|res://*/ClientSensorLocationModel.msl;
provider=System.Data.SqlClient;provider connection string="data source=MYUSER'SQLEXPRESS;initial catalog=ClientSensorLocation;integrated security=True;MultipleActiveResultSets=True;App=EntityFramework""
providerName="System.Data.EntityClient" />
</connectionStrings>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.6" />
</startup>
</configuration>
因此,具有该名称的连接字符串存在。那么问题出在哪里呢?
如果使用引用Projects的DbContext
,还需要在项目配置文件中注册连接字符串。
例如,如果您在web项目上使用DbContext
,请检查连接字符串是否在web.config上。