コンストラクターを連鎖させるシステムを、不可能かもしれないと思う方法で設計しようとしていますが、最初に確認したいと思います。
次のように5つのオーバーロードされたコンストラクターがあります。
public SqlCeDB(string filename)
public SqlCeDb(string filename, Dictionary<string, string> options)
public SqlCeDB(string filename, string password)
public SqlCeDB(string filename, string password, Dictionary<string, string> options)
public SqlCeDB(Dictionary<string, string> options)
すべてのロジックを最後のコンストラクターに組み込み、他のコンストラクターに制御を渡してもらいたいです。現在、次のように最初のコンストラクターが機能しています。
public SqlCeDB(string filename)
: this(new Dictionary<string, string> { { "DataSource", filename } })
{
}
しかし、2番目にこれを行う方法はありますか?上記のように新しい辞書を作成したいのですが、「オプション」と呼ばれる既存の辞書にすでにあるオプションもコピーする必要があります。