Это не совсем вопрос, а нечто вроде мысли, которая у меня была недавно.Я использую XmlAttribute для XmlSerialize класса в качестве примера: вы можете установить атрибуты для класса, чтобы выбрать, какие свойства следует сериализовать, но то же самое можно сделать довольно легко, реализовав теоретический интерфейс IXmlSerializable (он действительно существует что-то подобное,Я не помню) и перегружая метод "Serialize" для этого класса, который просто вызывает Serialize для свойств, которые вы хотите сериализовать (this.myProp1.Serialize ()), то же самое для Deserialize
Так что яЯ в основном говорю: не является ли метод Attribute немного избыточным?(Мне это действительно нравится, но я не нахожу это логически отличным от интерфейса)
Спасибо за любой ответ, как я уже сказал, это всего лишь мысль ... надеюсь, кто-то найдет это интересным
Обновление 1: Ну, я неправильно объяснил себе, что я спрашиваю: «Почему я должен выбрать атрибут вместо интерфейса (или наоборот)», а не именно этот конкретный случай(Я взял сериализацию, потому что это было первое, что всплыло в моей памяти), кстати, спасибо за ваш ответ, потому что они очень интересны