Brown2016-02-21ConnectionStringsを複数プロジェクトで共有するDevTweet今更というか、長年凄い勘違いをしていた事に気づいてしまいました。今までの開発ではずっと、メインプロジェクトとデータアクセス用のプロジェクトを分けた環境で開発をしていました。この際のアーキテクチャは自分ではなかったのであまり細かい点までは気にしていなかったのです。.NET2003の頃の考え方なので、モダンなスタイルというのも勉強してみました。単純にMainからデータアクセス用のDataModelsを参照するソリューションです。何もしなくて良かった元々のアーキテクトがデータアクセス用のプロジェクトで接続文字列に対して処理を行うクラスがあったので、てっきりこのクラスがメイン側のApp.configなりWeb.configなりを参照しに行って、値を加工しているんだとばかり思っていました。その方法が分からなくっていつも疑問に思っていたんです。この部分が完全に勘違いでした。何もしなくて良かったんですね。厳密に言うと、参照元(メインプロジェクト)のconfigファイルに記載されていた値が使用されているだけだったようです。当たり前なんでしょうが。多くの方は「何を今更・・・」と思われるかもしれません。あまりにも前提部分が不変なものだった為、「値を取りにいっているんではなく、参照元の値を渡している」という発想には長年至らなかったのです。勘違いに、事実に気づいた後しばし放心してしまいました。「なんだよ、こんな単純な事だったのかよ・・・」と。通りで今までどうやって接続文字列を取得しにいっているのか方法を探したり、Google先生に尋ねたりしたけれども分からないわけです。「そんな所に疑問なんて抱かない」レベルの問題でした。何もしなくていい訳ではない個人的な感想は「何もしなくていい」と記載しましたが、あくまでのロジック的な要素で何もしなくていいという事です。厳密には、Main側にもApp.configを用意して接続文字列を準備しないといけません。ああ、それにしてもこんな単純な事だったのか。