Мне просто любопытно, есть ли веская причина для написания такого кода, когда-либо
В зависимости от того, как вы смотрите, к сожалению, да, есть.Поскольку идентификатор, о котором мы говорим, является свойством, присвоение свойства свойству звучит как отсутствие операции, но фактически вызывает методы, метод получения и установки, и эти методы могут иметь побочные эффекты.
Особый случай, который очень распространен, - это когда установщик делает что-то вроде уведомления свойства или вызывает наблюдателя, но все может произойти, когда вы вызываете либо получатель, либо установщик.Вот почему код не генерирует предупреждение: потому что этот стиль кодирования действительно полезен и используется в рабочем коде.
Редактировать:
Путем сравнения, если идентификаторявляется полем , а не свойством , оно генерирует это предупреждение:
предупреждение CS1717: присваивание той же переменной;Вы хотели назначить что-то еще?