Como marcar um método ou classe como obsoleto (deprecated/obsolete) em C#?
Olá a todos. Sou novo em C# e estou escrevendo uma biblioteca de classes que será usada por outros desenvolvedores na minha empresa. Com o tempo, alguns métodos se tornam obsoletos, e quero que, ao usá-los no código, apareça um aviso ou erro de compilação, para que os desenvolvedores entendam que é melhor não usar o método e migrar para a nova API.
Por favor, me digam como fazer isso corretamente em C? É necessário um atributo especial? Posso especificar o texto da mensagem que será exibido na IDE? E é possível fazer com que o uso do método antigo cause não apenas um aviso, mas um erro de compilação?
Exemplo: tenho um método antigo `GetData(int id)`, que retorna dados, e um novo método `FetchData(int id, bool useCache)`. Quero que todos que escrevem `GetData(5)` vejam um aviso: "O método GetData está obsoleto. Use FetchData com o parâmetro useCache: false".
Desde já, agradeço pela ajuda!
<<>>
Uso do atributo