不支持的关键字:“数据源”初始化entity framework上下文
我正在初始化entity framework对象上下文,这给了我关键字不支持错误:
metadata=res://*/MainDB.csdl|res://*/MainDB.ssdl|res://*/MainDB.msl;provider=System.Data.SqlClient;provider connection string="Data Source=.\SQLEXPRESS;AttachDbFilename=D:\Workspace\vs\Leftouch\Leftouch.Web\Data\Leftouch.mdf;Integrated Security=True;Connect Timeout=30;User Instance=True;App=EntityFramework"
我直接从正在工作的web.config中获取连接string,并且只修改了文件的path(我dynamic地设置了该文件),而不是使用默认值,显式使用了这个连接string。 什么可能导致这个错误?
你得到这个错误的真正原因是因为"
连接string中的值。
如果你用单引号replace,那么它会正常工作。
http://blogs.msdn.com/b/rickandy/archive/2008/12/09/explicit-connection-string-for-ef.aspx
(发布可以让别人比我更快地获得修复)
我通过将EntityClient
更改回SqlClient
来解决此问题,即使我正在使用entity framework。
所以我完整的连接string的格式是:
<add name="DefaultConnection" connectionString="Data Source=localhost;Initial Catalog=xxx;Persist Security Info=True;User ID=xxx;Password=xxx" providerName="System.Data.SqlClient" />
这似乎是缺lessproviderName="System.Data.EntityClient"
位。 当然,你知道了吗?
信不信由你,将LinqPad.exe.config重命名为LinqPad.config解决了这个问题。
- EF 4.1 Code First错误 – 实体typesSomeType不是当前上下文的模型的一部分
- entity framework中的连接子句中的一个expression式的types不正确
- VS2013 Debugger + Entity Framework:“运行时拒绝评估expression式”,崩溃
- 是否有可能与entity framework运行本机SQL?
- 使用entity framework实体作为业务对象?
- 从EF 5 Code First Migrations生成完整的SQL脚本
- 问题与LINQ实体和String.StartsWith
- 为什么在EF 4.1中插入实体与ObjectContext相比如此之慢?
- entity framework选项来映射string列表或int列表(List <string>)