0

私は1クラスライブラリと1 MVCプロジェクトのソリューションを持っています。 MVCプロジェクトは、クラスライブラリを参照します。 私はこのようになりますクラスライブラリでのConnectionStringクラスを作成しました:ConfigurationManager.ConnectionStringsはどのように機能しますか?

public static string MyAppConnectionString { get; set; } = 
        ConfigurationManager.ConnectionStrings["MyApp"].ConnectionString; 

すべてが正常に動作しています。しかし、私が理解できないのは、ConfigurationManager.ConnectionStringsが、クラスライブラリのapp.configファイルとMVCプロジェクトのWeb.Configファイルの両方のConnectionStringsを知っていることです。

+0

https://msdn.microsoft.com/en-us/library/system.configuration.configurationmanager(v=vs.110).aspx – Nkosi

答えて

2

ConfigurationManagerは、現在実行中の実行可能ファイルのapp.configファイルに対して、またはWebアプリケーションの場合はweb.configファイルに対して機能します。ライブラリプロジェクトにあるapp.configは使用しません。

https://msdn.microsoft.com/en-us/library/system.configuration.configurationmanager%28v=vs.110%29.aspx?f=255&MSPPError=-2147217396

+0

なぜクラスライブラリの場合にクラスライブラリプロジェクト用にapp.configファイルが作成されるのですか実行されないだろうか? – Michael

+0

プロジェクトごとに常に設定ファイルがあります –

0

MVCアプリのweb.configファイルはのConfigurationManagerのために考慮されますので、あなたの接続文字列がその中にする必要があります。

関連する問題