我正在制作一个小库(DLL)来管理用户及其角色/特权。该计划是为了能够将此dll添加到MVC项目中,并能够操纵用户/角色/等。所有数据都驻留在SQL数据库中。

我正在使用 Entity Framework 进行数据访问。

因此,当我初始化一个新的RoleManager(这是我正在创建的lib中的主类的名称)时,我会为其提供一个connectionString,如下所示:

RoleManager roleManager = new RoleManager(string connectionString);

然后在构造函数中,我这样做:
db = new RoleManagerEntities(connectionString); //This is the EntityFramework

我正在尝试提供此连接字符串(还有许多其他字符串)
"metadata=res://*/RoleManager.csdl|res://*/RoleManager.ssdl|res://*/RoleManager.msl;provider=System.Data.SqlClient;provider connection string='Data Source=localhost;Initial Catalog=Login;Integrated Security=True;Connection Timeout=60; multipleactiveresultsets=true'"

我收到以下错误:
The specified named connection is either not found in the configuration, not intended to be used with the EntityClient provider, or not valid.

这个问题是由于试图从我的新项目实例化EF而没有提供连接字符串,并且在我的应用程序配置中没有任何默认值的结果。太糟糕了,我现在不能删除它。

最佳答案

只需将连接字符串信息从DLL配置文件复制到可执行配置文件即可。

10-06 06:16