Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/entity-framework/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/google-maps/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
ASP.NET MVC实体框架应用程序使用了错误的SQL连接字符串_Asp.net_Entity Framework_Asp.net Mvc 5_Connection String_Webdeploy - Fatal编程技术网

ASP.NET MVC实体框架应用程序使用了错误的SQL连接字符串

ASP.NET MVC实体框架应用程序使用了错误的SQL连接字符串,asp.net,entity-framework,asp.net-mvc-5,connection-string,webdeploy,Asp.net,Entity Framework,Asp.net Mvc 5,Connection String,Webdeploy,我有一个ASP.NET MVC5 web应用程序,它最初是使用VS2013创建的,首先使用Entity Framework 6代码进行数据迁移。它(在生产中)已经运行了将近一年,并且已经多次从VisualStudio使用WebDeploy重新部署 今天,我在VS2015中打开了解决方案,并将已知的代码库工作版本重新部署到生产环境中,没有任何问题。然而,在部署之后,生产网站遇到了中描述的问题,我通过应用作者的建议修复程序解决了这些问题 应用这些修复程序后,我现在遇到了一个新问题:一个异常表明应用程

我有一个ASP.NET MVC5 web应用程序,它最初是使用VS2013创建的,首先使用Entity Framework 6代码进行数据迁移。它(在生产中)已经运行了将近一年,并且已经多次从VisualStudio使用WebDeploy重新部署

今天,我在VS2015中打开了解决方案,并将已知的代码库工作版本重新部署到生产环境中,没有任何问题。然而,在部署之后,生产网站遇到了中描述的问题,我通过应用作者的建议修复程序解决了这些问题

应用这些修复程序后,我现在遇到了一个新问题:一个异常表明应用程序试图使用错误的连接字符串访问数据库:

由于检索用户的本地应用程序数据路径失败,无法生成SQL Server的用户实例。请确保用户在计算机上具有本地用户配置文件。连接将被关闭

在异常页面的详细信息中,问题的原因已澄清:

连接字符串使用应用程序的App_数据目录中的数据库位置指定本地Sql Server Express实例

我对此感到困惑,因为应用程序有一个专用的SQL Server实例,可以使用常规连接字符串访问该实例。我检查了WebDeploy生成的
Web.config
,它似乎完好无损。它包含正确引用生产SQL Server实例的命名连接字符串,代码(未更改)使用命名连接字符串正确实例化实体框架ApplicationContext

有人知道为什么这个应用程序现在希望创建自己的SQL Server实例,或者我可以做些什么来调试这个问题吗

非常感谢您的建议


Tim

在进行web部署之前,您可以尝试以下几点:

  • 检查是否将包含连接字符串声明(web.config)的项目设置为“启动项目”
  • 在发布模式下重新生成解决方案
  • 在“发布Web向导”的“设置”中,展开“文件发布选项”,然后选中“在目标位置删除其他文件”和“从App_数据文件夹中排除文件”

在部署web之前,您可以尝试以下几点:

  • 检查是否将包含连接字符串声明(web.config)的项目设置为“启动项目”
  • 在发布模式下重新生成解决方案
  • 在“发布Web向导”的“设置”中,展开“文件发布选项”,然后选中“在目标位置删除其他文件”和“从App_数据文件夹中排除文件”

谢谢-它们都是合乎逻辑的建议,但都没有产生任何影响。谢谢-它们都是合乎逻辑的建议,但都没有产生任何影响。