在c#中重用连接文件

Adn*_*han -2 c# asp.net

我希望将打开的连接文件分开并重新使用在.cs文件中的不同位置.我不想重写以下代码:

using (SqlConnection cn = new SqlConnection(ConfigurationManager.ConnectionStrings["connection"].ToString()));
Run Code Online (Sandbox Code Playgroud)

是否有可能在c#中,如php include files include("opendb.php").

Jon*_*eet 11

你没有包含任何内容 - 你只需将代码放入另一个类中.例如:

public static class ConnectionHelper
{
    public static SqlConnection GetConnection()
    {
        return new SqlConnection(ConfigurationManager.ConnectionStrings["connection"]
                                                     .ToString())
    }
}
Run Code Online (Sandbox Code Playgroud)

然后从你的其他代码:

using (var conn = ConnectionHelper.GetConnection())
{
    ...
}
Run Code Online (Sandbox Code Playgroud)

考虑更好的可测试性的另一种方法是使用依赖注入.创建GetConnection一个实例方法,并可能使ConnectionHelper实现一个接口......然后将其作为依赖项(例如在构造函数中).理想情况下,很少有东西需要直接连接 - 最好是公开更多以业务为中心的操作.