C# COM+互操作、实体框架6和连接字符串

C# COM+互操作、实体框架6和连接字符串,c#,.net,entity-framework,connection-string,C#,.net,Entity Framework,Connection String,我需要使用一些来自经典ASP的.net代码,因此我使用com互操作 除了EF6和它的连接字符串之外,它工作得很好。当我尝试从经典ASP调用使用EF的方法时,我得到 No connection string named 'Entities' could be found in the application config file. 因此,我想用以下代码将连接字符串编码到上下文中: using (Entities context = new Entities()) {

我需要使用一些来自经典ASP的.net代码,因此我使用com互操作

除了EF6和它的连接字符串之外,它工作得很好。当我尝试从经典ASP调用使用EF的方法时,我得到

No connection string named 'Entities' could be found in the application config file. 
因此,我想用以下代码将连接字符串编码到上下文中:

    using (Entities context = new Entities())
    {

        context.Database.Connection.ConnectionString = @"metadata=res://*/Model1.csdl|res://*/Model1.ssdl|res://*/Model1.msl;provider=System.Data.SqlClient;provider connection string='data source=server;initial catalog=database;persist security info=True;user id=sa;password=PasswordRemoved;MultipleActiveResultSets=True;App=EntityFramework'";
但是,在运行时从.net测试工具调用该方法时,我们再次得到:

No connection string named 'Entities' could be found in the application config file.
我确保指定在实体创建向导的代码中设置连接字符串,然后连接字符串不在app.config文件中


是什么阻止EF6.1在代码中而不是在配置文件中接受我的连接字符串?值得注意的是,我一直在寻找解决方案,但没有一个解决方案被卡住

您从哪里调用实体框架代码?例如,如果它来自控制台应用程序,则需要将连接字符串添加到控制台应用程序配置文件中,测试应用程序也是如此。问题是避免使用配置文件,并在代码中指定连接字符串。我在com部署中尝试将连接字符串放在machine.config、web.config中,在Component Services中指定应用程序路径,并将app.config和app.manifest放在其中,但这些都不起作用,然而,我没有在上面添加这些细节,因为它们与原子问题无关。这可能会对你有所帮助,我已经访问了该链接,不幸的是没有。前面的答案假设您可以在构造函数中指定连接字符串,这似乎是您无法再做的,而后面的答案是我在上面尝试过的,在EF6.1中似乎不起作用。