关键字不支持:“数据源”。:EF代码优先使用的ObjectContext和的LocalDB(Keyw

2019-08-05 01:11发布

我得到一个“关键词不支持错误”当我尝试连接到使用ObjectContext的一个的LocalDB数据库。

这是我的连接字符串:

<add name="connStr" providerName="System.Data.SqlClient" connectionString="Data Source=(LocalDb)\v11.0;Initial Catalog=proj1db;Integrated Security=True" />

这是试图创建的ObjectContext的实例代码:

var connectionString = ConfigurationManager
                .ConnectionStrings["connStr"]
                .ConnectionString;
ObjectContext _context = new ObjectContext(connectionString);

最后一行抛出System.ArgumentException:不支持关键字:“数据源”。

我使用的Visual Studio 2012的Web和定位的.NET Framework 4.5。 我有我的机器上安装的LocalDB。

如果我使用的DbContext,而不是它的工作原理:

public class proj1dbContext: DbContext
{
    public proj1dbContext() : base("name=connStr")
    ...

看来,这是一个类似的问题, 帮助EF代码首先连接字符串,但遗憾的是它并没有给出一个明确的答案,为什么实例化的ObjectContext抛出错误。

任何帮助appreaciated。 谢谢!

Answer 1:

ObjectContext需要一个EF连接字符串(与Metadata ,并Provider Connection String关键字),而不是特定的连接字符串。

你不能用代码优先使用ObjectContext的; ObjectContext的需要元数据的XML文件。



文章来源: Keyword not supported: 'data source'.: EF code-first using ObjectContext and LocalDB