Я использую static Resource Dictionary, который инициализируется следующим образом:
static ResourceDictionary resource = new ResourceDictionary()
{
Source = new Uri(
"pack://application:,,,/CommonResources;component/ApplicationData.xaml")
};
Код работал отлично в течение последних нескольких месяцев, но в последние несколько дней я начал испытывать следующеепроблема:
Исключение типа 'System.Xaml.XamlParseException' было сгенерировано.в System.Windows.Baml2006.Baml2006Reader.ReadObject (запись KeyRecord) в System.Windows.ResourceDictionary.CreateObject (ключ KeyRecord) в System.Windows.ResourceDictionary.RealizeDeferContent (ключ объекта, объект и значение, Boolean & canCacheR) в System.Windows.ictionary.GetValueWithoutLock (ключ объекта, Boolean & canCache) в System.Windows.ResourceDictionary.GetValue (ключ объекта, Boolean & canCache)
Помимо вышеуказанной инициализации, данные считываются из словаря путем доступа к необходимойitem:
if (resource.Contains(key))
{
return resource[key];
}
Единственное изменение в коде может быть связано со множеством потоков, одновременно обращающихся к словарю.Также важно упомянуть, что один и тот же код иногда отлично работает, а иногда выдает вышеупомянутое исключение (очень непоследовательное).
Буду признателен за любые идеи относительно самого исключения или проблемы в целом.