我使用Visual Studio 2012年我试图连接到一个全新的SQL Server 2012(标准)的实例,但是我似乎无法让我的连接字符串正确设置创造了一个全新的MVC 4应用程序在C#。
从我的web.config我的连接字符串:
<connectionStrings>
<add name="ConnectionStringName"
providerName="System.Data.SqlClient"
connectionString="Data Source=MyServerName;
Initial Catalog=MyDatabaseName;
Integrated Security=False;
User ID=MyUserID;Password=MyPassword;
MultipleActiveResultSets=True" />
</connectionStrings>
每次去到ASP.NET配置从Visual Studio,在页面加载内,但只要我点击“安全”,我得到了以下信息:
没有您选择的数据存储问题。 这可以通过一个无效的服务器名称或证书,或经许可不足引起的。 它也可以通过未启用角色管理器功能造成的。 点击下面的按钮被重定向到一个页面,您可以选择一个新的数据存储。
下面的消息可能会有助于诊断问题: 无法连接到SQL Server数据库。
我已验证我的凭据是正确的(我可以用它们通过SQL管理Studio连接)。 还有什么我可以检查? 我难倒。
更新:
我无法从SQL Management Studio中(MSSQLSERVER)内连接到我的默认实例所以我重新安装了SQL,创建一个命名实例(LHSQLSERVER)。 现在,我能够连接到在SQL Management Studio中该实例,但我仍然得到来自ASP.NET配置相同的错误。
还有一点要注意 - 在aspnet_regsql工具,我跑是从Framework64 \ v4.0.30319文件夹中。 那是正确的,如果我使用.NET 4.5?
更新2:
我试着用一个连接字符串替换我的连接字符串到远程站点(即mysite.winhost.com),我知道的作品,但我仍然得到同样的错误在ASP.NET网站配置工具? FWIW我也使用的是Windows 8,但我并不认为这无关紧要。
任何别的东西,我可以检查?
更新3:
我发现这个帖子 ,说你不需要aspnet_regsql工具了对MVC 4,所以我重新运行该工具删除所有的设置,但同样,没有运气。 有没有人这样做过与MVC 4?
更新4:
见我的回答如下,因为我找到了解决办法。
如果您能够使用SQL Management Studio中那么我相信一定有问题,连接字符串连接 -
连接字符串您正在使用如下格式 -
Data Source=myServerAddress;Initial Catalog=myDataBase;Integrated Security=SSPI;
User ID=myDomain\myUsername;Password=myPassword;
尝试使用IP Address, Port
在数据源字段一样-
<connectionStrings>
<add name="ConnectionStringName"
providerName="System.Data.SqlClient"
connectionString="Data Source=190.190.200.100,1433;
Initial Catalog=MyDatabaseName;
Integrated Security=False;
User ID=MyUserID;Password=MyPassword;
MultipleActiveResultSets=True" />
</connectionStrings>
或者尝试其他的变化 -
标准安全
Server=myServerAddress;Database=myDataBase;User Id=myUsername;Password=myPassword;
信任连接
Server=myServerAddress;Database=myDataBase;Trusted_Connection=True;
连接到SQL Server实例
Server=myServerName\myInstanceName;Database=myDataBase;User Id=myUsername;
Password=myPassword;
参考- http://www.connectionstrings.com/sql-server-2012
没有与SQL 2012尝试,但此连接字符串与SQL 2008 R2运行良好
connectionString="Server=ServerAddress;Database=DataBaseName;User Id=Username;Password=Password;"
要么
connectionString="user id=UserName;password=Password;initial catalog=DatabaseName;data source=SQLServerIPorFQDN;Connect Timeout=30;"
您可能需要启用配置角色管理器
<roleManager enabled="true"/>
感谢大家的投入,我终于找到了解决办法。 我碰到这篇文章描述的是VS 2012用来MVC 4.我基本上刚刚开始了新的成员简单,创建一个新的数据库,新的MVC 4项目,只是跟着文章中说明。 果然,就在网页上的“注册”在我的数据库中创建的表(S)和存储的用户信息。
虽然lhan16的回答帮我,那将是更简单地说,你需要添加所有的是一个DefaultConnection。 我来自同一个地方,那MVC使用安全框架不起作用数据库连接开始。 该框架的作者从来没有想过,你会不会使用DefaultConnection。