如何在Visual Studio 2010中实现vsix扩展的配置数据?

时间:2011-05-31 13:20:30

标签: visual-studio visual-studio-2010 vsix

我目前正在实施一个vsix扩展工具窗口,很快就需要一个数据库连接字符串来查询一些数据,以便在工具窗口中显示给开发人员。我想让这个连接字符串由开发人员配置。由于开发人员不太可能经常更改配置设置,因此文件就足够了。

是否可以在与sln文件相同的文件夹中使用app.config文件,如果是这样,我是否必须使用一些自定义配置设置来包装文件? NuGet似乎实现了这种方法,但我并不完全了解内部架构,以了解如何使用配置文件。

我也很欣赏任何替代方法。

编辑:

我已经意识到配置存储所服务的动态数据必须是特定于解决方案的,因此一个解决方案中使用的工具窗口可以使用与另一个解决方案不同的属性。我想一种可能性是使用.settings文件来存储单个配置文件的位置,该配置文件本身存储与不同解决方案相关的信息。

2 个答案:

答案 0 :(得分:3)

存储.vsix扩展程序设置的最佳位置是使用.settings文件。为了创建一个,请执行以下操作

  • 右键单击项目并选择“属性”
  • 转到“设置”标签
  • 单击链接以创建默认设置文件

这将在您的解决方案中创建几个文件。

  • Settings.settings
  • Settings.Designer.cs

此外,它还将启动一个可以添加新设置的设计器。之后可以使用Settings.Default静态属性

访问这些内容

答案 1 :(得分:3)

在那里,我认为内置机制运行得最好,详细的演练:http://msdn.microsoft.com/en-us/library/ff460144.aspx

从self中添加注释我可以看到底层实现使用系统注册表子项。但是,在卸载VSIX扩展程序后,所有密钥都会自动删除,因此您的扩展程序不会污染系统,从而留下孤立的条目。