我在MVC中编写网页,它使用Entity Framework作为ORM映射器。我把我的连接字符串放到web.config文件中。这是它:
<add name="JP_CMS" connectionString="Data Source=.;Initial Catalog=JP_CMS;
User Id=CmsWebUser;Password=abcd1234abcd1234;"
providerName="System.Data.SqlClient"/>
我试图通过这个C#代码获取数据
public DataBaseContext()
: base("JP_CMS")
{
Database.SetInitializer(new DropCreateDatabaseIfModelChanges<DataBaseContext>());
}
//------------------------------
var db = new DataBaseContext();
var result = db.Articles.ToList(); //<- here is thrown exception
//------------------------------
我的本地SQL服务器正在运行,这个表是存在的,但是我得到了类似的信息:
我认为这是最重要的考虑因素:“在建立与SQL Server的连接时发生与网络相关或特定于实例的错误。未找到服务器或无法访问服务器。验证实例名称是否正确SQL Server配置为允许远程连接。(提供程序:命名管道提供程序,错误:40 - 无法打开与SQL Server的连接)“
你可以帮我解释一下我做错了吗?
答案 0 :(得分:2)
“系统找不到指定的文件”错误。仔细检查你的连接字符串。
答案 1 :(得分:1)
而不是DataSource =.
尝试DataSource = .\sqlInstanceName
。 DataSource=(local)
也可能有用。
答案 2 :(得分:1)
hi错误表示EF尝试连接到服务器但失败了。
你能Checkk,
1)SQL Server应该启动并运行。
转到所有程序&gt;&gt; Microsoft SQL Server 2008&gt;&gt;配置工具&gt;&gt; SQL Server配置管理器&gt;&gt; SQL Server服务,并检查SQL Server服务状态是否为“正在运行”。
此外,请确保您的远程服务器位于同一网络中。在命令提示符下运行“sqlcmd -L”以确定您的服务器是否包含在网络列表中。
2)在SQL Server配置中启用TCP / IP
有关详情,请访问here