我正在尝试将连接字符串传递给我的数据库上下文,并且当我将静态变量传递给它时它会起作用。但我的要求是在会话变量中传递连接字符串。我怎样才能做到这一点。
以下是代码和我使用的不同选项
数据库上下文
public EntEventServices_2_0Entities(string strConnectionString)
: base(strConnectionString)
{
}
启动db对象,因为它使用了静态变量:
private EntEventServices_2_0Entities db = new EntEventServices_2_0Entities(ConnectionManager.strConnectionString);
但是现在因为我已经在会话变量中保存了连接字符串,所以我正在尝试这个:
private EntEventServices_2_0Entities db = new EntEventServices_2_0Entities(Session["ConnectionString"].ToString());
和此:
private EntEventServices_2_0Entities db = new EntEventServices_2_0Entities(HttpContext.Current.Session["ConnectionString"].ToString());
但每次我都会收到以下错误:
非静态字段,方法或属性'System.Web.Mvc.Controller.HttpContext.get'
需要对象引用关于我的应用程序的一些细节:我正在使用EF6开发MVC5应用程序,并且要求将一个应用程序连接到类似模型的多个数据库。
如果需要更多详细信息,请与我们联系。