服务器上的SQL Server Express连接字符串不起作用

时间:2012-11-03 03:20:21

标签: c# jquery connection-string sql-server-express

我已将我的项目上传到服务器,一切正常,直到我尝试登录"或"注册"使用EF

有趣的是,在我的电脑上,我已经将它与SQL Server Express& SQL Server Compact - 它只是在服务器上不起作用

在服务器上,我安装了SQL Server Express

这是连接字符串

<add name="DefaultConnection"
     connectionString="data source=(localhost);Integrated Security=SSPI;
                       database=aspnet-MvcDealerConn-20121005200308;
                       AttachDBFilename=|DataDirectory|aspnet-MvcDealerConn-20121005200308.mdf;
                       User Instance=true"
     providerName="System.Data.SqlClient" />

非常感谢任何帮助

1 个答案:

答案 0 :(得分:0)

整个用户实例和AttachDbFileName = 方法存在缺陷 - 充其量!而且它也被弃用了 - 不要使用它!

我解决这个问题的方法是:

  1. 安装SQL Server Express(你已经完成了)

  2. 安装SQL Server Management Studio Express

  3. SSMS Express 中创建数据库,为其指定一个逻辑名称(例如DealerConn

  4. 使用其逻辑数据库名称(在服务器上创建时给定)连接到它 - 并且不要乱用物理数据库文件和用户实例。在这种情况下,您的连接字符串将类似于:

    Data Source=servername\\SQLEXPRESS;Database=DealerConn;User ID=SomeUser;Pwd=SecretPwd
    

    其他所有内容都完全与以前相同......

  5. 由于它托管在远程服务器上,我还认为您最需要提供单独的,明确的用户名和密码(并且您不能使用Integrated Security=SSPI;标记)