我正在为我的项目使用Entity Framework 5.0
。我查看了互联网,我看到对于实体框架数据上下文,有另一个构造函数,它有一个连接字符串的字符串参数。
在我生成的data context
上,我没有这样的构造函数。我查看了基础DbContext
,它有一个这样的构造函数。
代码生成错误了吗?我从数据库生成代码。这可能是原因吗?
原来我可以编辑代码生成模板文件来添加新的构造函数。现在我添加了新的构造函数。该文件是edmx模型下的MyDataContext.tt文件。你有c#代码与模板代码混合在一起。您可以从那里复制无参数构造函数并将其粘贴到下面。然后你可以改变它并为它添加一个字符串参数,并将该参数传递给DbContext构造函数,如下所示:base(myString)。
答案 0 :(得分:23)
您可以根据需要添加一个。
检查生成的文件并添加重载的构造函数。
public YourContext(string connectionStr)
: base(connectionStr)
{
}
可能更好的是在部分类中定义它,因为每一代都需要你每次都手动添加它。