我有几个Visual Studio Extensions(VSX),我需要彼此通信。 (例如激活功能,共享保存的文件,从一个到另一个访问项目项。)我可以利用注册表,但我对此感觉很糟糕。我在考虑一个常用的XML文件,但我担心没有适当的权限来访问它。你能帮我找到(实时)扩展之间共享数据的最佳实践吗?
答案 0 :(得分:1)
我会将信息存储在%LOCALAPPDATA%
下的某处。这两个扩展都可以访问它,它是每用户的(它评估为C:\users\[username]\AppData\Local
)。
从this SO question,您可以使用以下内容获取对此路径的引用:
Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData)
答案 1 :(得分:1)
进行两次扩展谈话的一般方法是提供服务。包提供和消费服务。 看看this