私の推測では、この質問は「当然」のカテゴリに分類されると思いますが、それでも、私は混乱しています。
たとえば、Windows フォーム アプリケーションで構成ファイルを使用する場合、構成ファイルはC:\Program files\CompanyName\ProductName\Application.exe.configにあります。ただし、開発中のクラス ライブラリでは、Visual Studio から (別のプロジェクトと並行して) インストールした後、インストール フォルダーに" ClassLibrary.dll.config " ファイルが表示されません。ファイルはどこにもありませんが、ファイルからのデータの取得は正しく機能しています。さらに、クラス ライブラリ内のメソッドから次のコードを実行すると、予想されるパスC:\Program files\CompanyName\ProductName\ClassLibrary.dll.configが返されます。
誰かが私がここで見逃しているものに光を当てることができれば、それは本当に素晴らしいことです.
public static string MyMethod()
{
Assembly assem = Assembly.GetExecutingAssembly();
Configuration config = ConfigurationManager.OpenExeConfiguration(assem.Location);
return "The assembly location was: " + assem.Location + Environment.NewLine +
"The config file path was: " + config.FilePath;
// Gives me "C:\Program files\CompanyName\ProductName\ClassLibrary.dll.config"
}