没有Entity Framework datacontext中具有连接字符串的构造函数

Ale*_*ecu 16 .net entity-framework-5

我正在使用Entity Framework 5.0我的项目.我查看了互联网,我看到对于实体框架数据上下文,有另一个构造函数,它具有连接字符串的字符串参数.

在我生成的data context我没有这样的构造函数.我查看了基础DbContext,它有这样的构造函数.

代码生成错了吗?我从数据库生成代码.这可能是原因吗?

事实证明我可以编辑代码生成模板文件来添加新的构造函数.现在我添加了新的构造函数.该文件是edmx模型下的MyDataContext.tt文件.你有c#代码与模板代码混合在一起.您可以从那里复制无参数构造函数并将其粘贴到下面.然后你可以改变它并为它添加一个字符串参数,并将该参数传递给DbContext构造函数,如下所示:base(myString).

sca*_*tag 23

您可以根据需要添加一个.

检查生成的文件并添加重载的构造函数.

public YourContext(string connectionStr)
        : base(connectionStr)
    {


    }
Run Code Online (Sandbox Code Playgroud)

可能更好的是在部分类中定义它,因为每一代都需要你每次手动添加它.

  • 我同意scartag最好在部分类中定义它,因为每次生成代码时你都会失去自定义.而且比编辑tt文件更容易. (3认同)