我在项目中使用Entity Framework 5.0。我在互联网上看了一下,发现对于实体框架数据上下文,还有另一个构造函数,该构造函数具有用于连接字符串的字符串参数。

在生成的data context上,我没有这样的构造函数。我查看了基本的DbContext,它具有这样的构造函数。

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

原来,我可以编辑代码生成模板文件以添加新的构造函数。现在,我添加了新的构造函数。该文件是edmx模型下的MyDataContext.tt文件。在那里,您将c#代码与模板代码混合在一起。您可以从此处复制no参数构造函数并将其粘贴如下。然后,您可以对其进行更改并向其添加一个字符串参数,然后将该参数传递给DbContext构造函数,如下所示:base(myString)。

最佳答案

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

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

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


    }


不过,最好在部分类中定义它,因为每一代都需要您每次手动添加它。

10-08 07:56
查看更多