我正在尝试运行一个非常简单的EF Code First示例,但遇到了上述问题。我已经按照这里的建议进行了操作(如何为EF Code First配置ProviderManifestToken),但无济于事。最终,我通过将实际连接字符串传递给DBContext而不是我定义的连接字符串名称来使EF创建我的数据库和表。以下是我最初在app.config中定义连接字符串的方法。
<connectionStrings>
<add name="ProductContext"
connectionString="integrated security=SSPI;
data source=MYMACHINE;
persist security info=False;
initial catalog=Product"
providerName="System.Data.SqlClient" />
</connectionStrings>
名称 "ProductContext" 与类 ProductContext 匹配,但数据库 Product 不存在。
根据之前的建议,我将连接字符串名称传递给了 ProductContext 和基本的 DBContext cstor。这也没有起作用。
最后,我传递了上面的连接字符串,一切都正常工作,数据库和表被创建。
我正在使用 SQL Server 2008 和 EF 4.1。您有什么想法我做错了什么吗?
谢谢,
肯恩
更新
应用程序是一个 WPF 应用程序,而不是 Web 应用程序。当我从 app.config 中删除连接字符串后,我会得到相同的异常:
"在建立到 SQL Server 的连接时发生与网络相关或特定于实例的错误。未找到服务器或无法访问服务器。请检查实例名称是否正确,以及是否配置了允许远程连接的 SQL Server。(提供程序:SQL Network Interfaces,错误:26 - 找不到指定的服务器/实例)"