在Visual 2010项目中添加.mdf文件( Server数据库)时出错
到Server数据库文件(.mdf)的.mdf连接要求在本地计算机上安装和运行SQLServer2005Express或SQLServer2008Express
我不想安装( 2005 /2008),因为我已经安装了Server 2005企业版
我正在使用Visual 2010终极版
发布于 2012-02-03 11:06:34
这真的很烦人。基本上,在Machine.config中,对于您正在开发的框架的版本,LocalSqlServer有一个条目。
在我的机器上,第4版:
C:\Windows\Microsoft.NET\Framework\v4.0.30319\Config\Machine.config
<add name="LocalSqlServer" connectionString="data source=.\SQLEXPRESS;Integrated Security=SSPI;AttachDBFilename=|DataDirectory|aspnetdb.mdf;User Instance=true" providerName="System.Data.SqlClient" />我发现,如果我将连接字符串的数据源部分更改为指向我的Sql 2005完整服务器实例,那么您提到的错误就消失了。
(类似于框架的其他版本,我也对其进行了修改)
我不记得在看到这些更改之前是否只需要重新启动visual studio或整个机器。
在编辑machine.config文件之前,记得备份它们!
话虽如此,您也没有理由不能将数据库添加到Server本身(如果您有mdf),然后通过视图->服务器资源管理器->数据连接(右单击->添加连接)从Visual连接到数据库--您试过吗?
发布于 2016-05-12 15:51:41
如果不存在,可以使用代码添加
string curFile = @"C:\Dev\Test_data.mdf";
if (!File.Exists(curFile))
{
SqlConnection connection = new SqlConnection(@"server=(localdb)\v11.0");
using (connection)
{
connection.Open();
string sql = string.Format(@"
CREATE DATABASE
[Test]
ON PRIMARY (
NAME=Test_data,
FILENAME = '{0}\Test_data.mdf'
)
LOG ON (
NAME=Test_log,
FILENAME = '{0}\Test_log.ldf'
)",
@"C:\Dev"
);
SqlCommand command = new SqlCommand(sql, connection);
command.ExecuteNonQuery();
}
}https://stackoverflow.com/questions/9127359
复制相似问题