我的项目的一部分开始使用不正确的连接字符串 - 我该如何解决?

时间:2013-09-09 18:04:17

标签: c# asp.net asp.net-mvc connection-string xsockets.net

我有一个项目的一个解决方案。这个项目是一个带有xsockets.net websocket服务器的asp.net mvc web应用程序(一切都在单个项目中合并)。

一切都工作了几个月,直到今天。今天我决定更新实体框架和xsockets.net。途中几乎没有错误,但几乎所有人都解决了......差不多。

好吧,运行websocket服务器的项目部分没有使用正确的连接字符串。我的意思是,我可以登录我的Web应用程序,并移动它(所以asp.net mvc正在使用正确的连接字符串),但我的websocket服务器(使用相同的数据库)无法从数据库收集任何数据,因为它正在抛出连接字符串异常不正确。

由于所有内容都在单个项目中,使用单个web.config文件,我不知道接下来该做什么。我不相信这是websocket相关的错误,也许实体框架更新已经改变了什么?无论如何,有没有办法在类中明确使用连接字符串?我还能做些什么来解决这个问题?

1 个答案:

答案 0 :(得分:1)

当Entity Framework连接以创建实体对象时,它还会建立到该数据库的连接字符串。这通常不是问题,因为该项目由另一个程序引用,该程序使用自己的应用程序配置(或Web配置)覆盖服务器连接字符串。

通常在连接到Sql Server实例的代码中,编写代码:

 using ( MyServer context = new MyServer(myconfig.ConnectionStrings["MyServerName"]))
 {
 }

如果在创建上下文实例时排除提供连接字符串,则可能会捕获更新实体框架时创建的默认值。所以这可能会回答你的两个问题:为什么它改变了你的连接字符串。显式使用是上面的代码示例。