为什么将连接字符串放在构造函数中而不是将其遗漏?

Gri*_*zly 0 c# asp.net-mvc-5

我在控制器中看到了连接字符串的不同实现.

有些就像:

public class tableNameController : Controller
{
    private ConnectionStringName db = new ConnectionStringName();
    ...
Run Code Online (Sandbox Code Playgroud)

其他人是:

public class tableNameController : Controller
{
    private ConnectionStringName db;

    public tableNameController()
    {
        db = new ConnectionStringName();
    }
Run Code Online (Sandbox Code Playgroud)

将连接字符串放在构造函数中或将其保留为私有变量是否有好处?

Chr*_*ken 6

.NET运行时实际上完全相同地处理这些情况.它生成相同的IL,因此它对你来说在语法上看起来更好.

现在,还有许多其他考虑因素可以使这个可测试和清洁.我会做一些关于依赖注入和单元测试的研究.