这是我第一次使用SQL Server 2012 Express的"代码优先方法"。
我正在尝试创建一个数据库,但有一个问题与连接字符串。
我的连接字符串:
Data Source=AMBROGIOSQLEXPRESS;Initial Catalog=TAP2014_15Project;Integrated Security=True;
这是到达setup函数的连接字符串:
Data Source=AMBROGIO\SQLEXPRESS;Initial Catalog=TAP2014_15Project;Integrated Security=True;
我的Pc的名字后面有两个\
。
对于一个测试,我试着写一些其他的东西作为连接字符串,在调试下,它到达没有修改(显然它引发了一个错误)。
有人能帮帮我吗?
谢谢。菲利普
你好,很抱歉现在才回复。是的,我正在使用调试器来查看字符串。
现在的错误是由我的方法引发的异常:
db.Database.CreateIfNotExists();
错误:Exception:Thrown: "Cannot open database "TAP2014_15Project" requested by the
login. The login failed.
Login failed for user 'AMBROGIOFilippo'."
(System.Data.SqlClient.SqlException)
A System.Data.SqlClient.SqlException was thrown: "Cannot open database
"TAP2014_15Project" requested by the login. The login failed.
Login failed for user 'AMBROGIOFilippo'."
配置文件中应该包含以下行:
<add name="ConnectionStringName"
providerName="System.Data.SqlClient"
connectionString="Data Source=AMBROGIOSQLEXPRESS;Initial Catalog=TAP2014_15Project;Integrated Security=True" />
如果您从c#代码中设置连接字符串,则:
connectionString = @"Data Source=AMBROGIOSQLEXPRESS;Initial Catalog=TAP2014_15Project;Integrated Security=True";
示例源代码。
关于登录错误的问题——同样的问题已经解决了。查一下。
双反斜杠是一个转义序列,当包含在双引号分隔的字符串中时,它将解析为单个反斜杠。反斜杠在许多上下文中用于表示多字符转义序列的开头,以表示特殊字符或不可打印字符。不幸的是,微软在他们早期的DOS操作系统中也选择了反斜杠作为路径分隔符。因此,要在双引号分隔的字符串中表示路径分隔符,需要使用双反斜杠