Влияет ли добавление [DataContract] и [DataMember] ко всем классам на производительность - PullRequest
5 голосов
/ 02 июня 2011

Допустим, у нас есть инструмент для генерации кода, который создает тысячи классов C #, и нам иногда нужно добавить эти атрибуты к ним.

Мы рассматриваем, лучше ли ставить [DataContract] и [DataMember] на всех соответствующих классах или нам нужно создать специальную стратегию, которая определит, следует ли это делать, чтобы накопить некоторые возможные?потеря производительности в подходе AtribbuteAll.

В конце концов, вопрос в том, может ли добавление атрибутов как-то повлиять на производительность?

Я думаю, что добавление атрибута в класс просто останется с информацией о его типе ине должно влиять на производительность, но хотелось бы быть на 100% уверенным здесь

Ответы [ 3 ]

3 голосов
/ 02 июня 2011

Добавление атрибутов может повлиять на производительность, если они проверяются в некоторой части кода, в противном случае классы будут иметь больше метаданных, но это не влияет на производительность.

1 голос
/ 02 июня 2011

Сомнительно, что это повлияет на производительность, все эти атрибуты помечают их как сериализуемые для WCF.

0 голосов
/ 02 июня 2011

ударопрочность неизбежна. но если вам нужен атрибут, чтобы завершить ваше внимание, у вас нет другого выбора. если вам это не нужно, вы можете удалить его.

...