MVC 4 Connectionstring到SQL Server 2012

lha*_*han 22 c# asp.net-mvc-4 .net-4.5 sql-server-2012 visual-studio-2012

我使用Visual Studio 2012在C#中创建了一个全新的MVC 4应用程序.我正在尝试连接到一个全新的SQL Server 2012(标准)实例,但我似乎无法正确设置我的连接字符串.

我的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>
Run Code Online (Sandbox Code Playgroud)

每次从Visual Studio中进入ASP.NET配置时,页面都会加载,但只要我点击"安全性",我就会收到以下消息:

您选择的数据存储存在问题.这可能是由无效的服务器名称或凭据或权限不足引起的.它也可能是由未启用角色管理器功能引起的.单击下面的按钮可重定向到可以选择新数据存储的页面.

以下消息可能有助于诊断问题: 无法连接到SQL Server数据库.

我已经验证我的凭据是正确的(我可以使用它们通过SQL Management 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:

我发现这篇帖子说你不再需要用于MVC 4的aspnet_regsql工具了,所以我重新运行了删除所有设置的工具,但是再一次,没有运气.有没有人以前用MVC 4做过这个?

更新4:

有关我找到的解决方案,请参阅下面的答案.

Par*_*ram 12

如果您能够使用Sql Management Studio进行连接,那么我相信连接字符串一定存在问题 -

连接字符串您使用以下格式 -

Data Source=myServerAddress;Initial Catalog=myDataBase;Integrated Security=SSPI;
User ID=myDomain\myUsername;Password=myPassword;
Run Code Online (Sandbox Code Playgroud)

尝试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>
Run Code Online (Sandbox Code Playgroud)

或尝试其他变化 -

标准安全

Server=myServerAddress;Database=myDataBase;User Id=myUsername;Password=myPassword;
Run Code Online (Sandbox Code Playgroud)

可信连接

Server=myServerAddress;Database=myDataBase;Trusted_Connection=True;
Run Code Online (Sandbox Code Playgroud)

连接到SQL Server实例

Server=myServerName\myInstanceName;Database=myDataBase;User Id=myUsername;
Password=myPassword;
Run Code Online (Sandbox Code Playgroud)

参考 - http://www.connectionstrings.com/sql-server-2012


lha*_*han 1

感谢大家的意见,我终于找到了解决方案。我发现这篇文章描述了 VS 2012 用于 MVC 4 的新简单成员资格。我基本上只是重新开始,创建一个新数据库、新 MVC 4 项目,然后按照文章中的说明进行操作。果然,只需在网页上“注册”即可在我的数据库中创建表并存储用户信息。