是否有 Visual Studio 加载项的配置类型文件?

Posted

技术标签:

【中文标题】是否有 Visual Studio 加载项的配置类型文件?【英文标题】:Is there a config type file for Visual Studio Add-In? 【发布时间】:2011-04-24 22:17:59 【问题描述】:

在创建 Visual Studio 加载项时,如何将 app.config 用于加载项。如果我在项目中添加一个并部署它,那么当加载项运行并且我以编程方式尝试通过 ConfigurationManager.AppSettings 访问它时,它不会获取加载项的配置文件。 我做错了什么还是有其他方法可以访问加载项的基于文件的配置设置?

【问题讨论】:

【参考方案1】:

ConfigurationManager.AppSettings 为您加载到的 AppDomain 获取配置文件。该配置文件通常与入口点可执行文件相关联。在您的情况下,您无法控制入口点可执行文件或运行的 AppDomain,因此您无法使用 ConfigurationManager.AppSettings。

您的问题基本上归结为“我怎样才能拥有与 DLL 关联的配置文件?” (C# Dll config file)。你需要做两件事:

    将应用程序配置文件项添加到您的项目中,并确保将其部署到与您的 DLL 相同的文件夹中。

    使用如下代码从您的 DLL 访问配置文件:

     string pluginAssemblyPath = Assembly.GetExecutingAssembly().Location;
     Configuration configuration = ConfigurationManager.OpenExeConfiguration(pluginAssemblyPath);
     string someValue = configuration.AppSettings.Settings["SomeKey"].Value;
    

这肯定适用于不使用卷影复制加载的常规 DLL。我不确定 VS 如何加载它的插件。如果您遇到问题,请告诉我,我可以针对通过卷影副本加载的 DLL 发布解决方法。

【讨论】:

以上是关于是否有 Visual Studio 加载项的配置类型文件?的主要内容,如果未能解决你的问题,请参考以下文章

Visual Studio 2022 未加载依赖项

是否有视觉(例如 Visual Studio 中的 nuget 样式)包管理器?

Visual Studio 2012 - 数据库项目 - 设置发布的默认配置文件

Visual Studio 2010 不会自动链接来自依赖项的项目中的静态库,因为它应该是

visual studio 2010 简体中文版编程软件怎么安装

自动附加到开发服务器的 Visual Studio 加载项