У меня есть расширение Visual Studio, в котором большая часть функций написана через MEF. До сих пор моя индивидуальная функциональность рассчитана на ITextBuffer
, поэтому я использовал элемент Properties для кэширования экземпляров.
Однако теперь у меня есть некоторые функции, которые должны быть для каждого проекта и для каждого решения. Классы EnvDTE предлагают объект Properties, но я не мог понять, могут ли они хранить мои собственные произвольные данные. Я действительно не хочу, чтобы мои собственные данные были статичными.
Как я могу хранить данные по проектам и решениям, не прибегая к глобальным переменным?
Редактировать:
Я мог бы также упомянуть, что, поскольку вы не можете использовать импорт MEF для статических данных, даже если вы скрываете его в чем-то вроде синглтона, использование маршрута глобальной переменной физически невозможно. Так что мне действительно нужно что-то неглобальное.
Редактировать:
Я говорю о ссылках на объекты, а не о постоянных значениях. Мне не нужно ничего хранить в файле решения или проекта, только с объектом.