我正在使用asp.net identity
和EF data first
的方法。本地主机上的一切正常工作。我在appharbor上托管了我的网站。我的所有控制器操作和webapi都正常工作,除了AccountController
。当用户尝试注册时,会给出Internal server error
。错误的详细信息是: 在虚拟主机期间无法连接到LocalDB
注意:我的数据库查询工作正常。这意味着连接字符串中没有问题。
并启用SQL Server Network Configuration
不具有选择远程连接Protocols for SQLEXPRESS
我怎样才能解决这个问题?
更新:在web.config
我的连接字符串是:
<connectionStrings>
<add name="DefaultConnection" connectionString="Data Source=(LocalDb)\v11.0;AttachDbFilename=|DataDirectory|\aspnet-Inspinia_MVC5_SeedProject-20141215093835.mdf;Initial Catalog=aspnet-Inspinia_MVC5_SeedProject-20141215093835;Integrated Security=True" providerName="System.Data.SqlClient" />
<add name="Entities" connectionString="metadata=res://*/Models.Model1.csdl|res://*/Models.Model1.ssdl|res://*/Models.Model1.msl;provider=System.Data.SqlClient;provider connection string="Server=b1ad1f3e-1ab5-4169-93f8-a5ae006f3e4e.sqlserver.sequelizer.com;Database=8a5ae006f3e4e;User ID=namucclqps;Password=54nWBkCfURyMzYfhbu8NUQb6PEZUsWcoN;"" providerName="System.Data.EntityClient" />
</connectionStrings>
更新2: 我安装SQL Server Management Studio
。然后,我在appharbor上托管了我的网站并安装了附件SQL Server
。然后使用以下信息连接到服务器。
然后在SQL Server Management Studio
中添加表格并更改连接字符串web.config
和已发布的网站。
实际上,*在连接字符串中存在*错误,这正是错误所说 - 它无法连接到服务器。它甚至解释说你在LocalDB安装时未尝试使用LocalDB连接字符串。您是否正在使用*不同*连接字符串进行用户管理? –
我在'SQL Server Management Studio'的表中手动输入了数据,查询工作正常,数据被检索到。错误是否仍然存在连接字符串? –
SSMS与您存储在web.config中的连接字符串无关。在任何情况下,错误都不能*更明确 - 您正在使用LocalDB连接字符串,并且Web服务器上没有安装LocalDB运行时。无论是连接字符串是错误的,并没有指向你的数据库,或者它是正确的,你将数据添加到数据库该网站一无所知 –