6

デフォルトでプライベートコンストラクターを呼び出すパブリックコンストラクターでクラスをインスタンス化できるようにしたいのですが、それは以下のコードに近いものだと思いますが、そうではありません。

    public MySQLConnector()
        : this MySQLConnector (ConfigurationManager.AppSettings["DBConnection"])
    {
    }

    private MySQLConnector(string dbConnectionString)
    {
        //code
    }
4

1 に答える 1

7

あなたはほとんどそれを手に入れました。this(...)クラス名なしで を使用するだけです。

public MySQLConnector()
    : this(ConfigurationManager.AppSettings["DBConnection"])
{
}

これは、Using Constructors (C# Programming Guide)に記載されています。

コンストラクターは、 this キーワードを使用して、同じオブジェクト内の別のコンストラクターを呼び出すことができます。baseと同様に、これはパラメーターの有無にかかわらず使用でき、コンストラクター内の任意のパラメーターは、thisのパラメーターとして、または式の一部として使用できます。

于 2013-11-14T07:35:28.520 に答える