Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
是否可以使用实体框架访问C#类中定义的连接字符串?_C#_.net_Entity Framework_Database Connection_Connection String - Fatal编程技术网

是否可以使用实体框架访问C#类中定义的连接字符串?

是否可以使用实体框架访问C#类中定义的连接字符串?,c#,.net,entity-framework,database-connection,connection-string,C#,.net,Entity Framework,Database Connection,Connection String,我需要在应用程序中使用实体框架,我需要从用户输入在web.config文件的连接字符串中设置用户名和密码。现在我需要知道如何从我定义的C类访问放置在web.config中的连接字符串,以读取输入并在连接字符串中设置它们? 我可以在C#类和实体框架中定义一个连接字符串并使用它吗?我没有测试过这段代码,但我认为它非常接近解决方案: public static class ConnectionStrings { public const string MyConnectionStrinGoes

我需要在应用程序中使用实体框架,我需要从用户输入在web.config文件的连接字符串中设置用户名和密码。现在我需要知道如何从我定义的C类访问放置在web.config中的连接字符串,以读取输入并在连接字符串中设置它们?
我可以在C#类和实体框架中定义一个连接字符串并使用它吗?

我没有测试过这段代码,但我认为它非常接近解决方案:

public static class ConnectionStrings
{
    public const string MyConnectionStrinGoesHere = "My connection string goes here";
}

public class Context : DbContext
{
    public Context(string connectionString) : base(connectionString) { }
}

public class ConnectionStringFromClassContext : Context
{
    public ConnectionStringFromClassContext() : base(ConnectionStrings.MyConnectionStrinGoesHere)
    {

    }
}
在您的程序中,您可以使用:

private static void Main(string[] args)
{
    ConnectionStringFromClassContext context = new ConnectionStringFromClassContext();
}

您将传递在静态类中定义的connectionstring。

EF上下文类构造函数可能会收到带有连接字符串的字符串。我想问题是如何将类传递给构造函数:-)感谢您的解决方案,但现在我如何将此connectionstring FromClassContext实例设置为web.config?EF如何访问此连接字符串?使用这种方法是否不需要在web.config中定义连接字符串?由于不太清楚,您可以再解释一下您需要什么。当我在程序中配置连接字符串时,我需要将其设置为web.config文件中实体框架的默认连接字符串。当我使用EF时,它会在web.config中声明一个连接字符串,并使用它连接到数据库。如果我使用您的解决方案,实体框架能否确定这一点?我以编程方式声明的连接字符串应该是。EF使用名称或完全连接构造函数。我的代码创建一个指定连接字符串的新上下文。试试看