Правильный способ хранить некоторые метаданные, связанные с объектом?C#

Место общения программистов C#
Ответить
Anonymous
 Правильный способ хранить некоторые метаданные, связанные с объектом?

Сообщение Anonymous »

Во -первых, я боюсь проблемы с утечкой памяти здесь. Потому что я использую какой -то словарь для хранения метаданных с ключом самого объекта. Таким образом, я могу искать метаданные (которые должны быть динамическими), передавая объект. по своему экземпляру.
Этот вид хранения выглядит очень похоже на то, что в зависимости от < /code> в WPF. Мы можем объявить DevidencyProperty (прикрепленное свойство), чтобы расширить зависимость (метаданные содержатся в прикрепленном свойстве).
Вот что я имею:

Код: Выделить всё

Dictionary _metadataLookup = new Dictionary();
//to store metadata
_metadataLookup[someObject] = someMetaData;
//to get metadata
SomeMetaData someMetaData;
_metadataLookup.TryGetValue(someObject, out someMetaData);
Было бы хорошо, если бы время жизни ComeObject совпадает с временем срока службы с использованием _metadatalookup . Но что, если кто -то (после сохранения в _metadatalookup ) должен быть уничтожен (логически становится неиспользованным)? Мы должны вручную удалить его с _metadatalookup , в противном случае есть утечка памяти. Объекты вручную или просто не знают, когда объекты должны быть удалены здесь, являются проблемой.

Подробнее здесь: https://stackoverflow.com/questions/534 ... -an-object
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»