¿Cómo marcar un método o clase como obsoleto (deprecated/obsolete) en C#?
Hola a todos. Soy nuevo en C# y estoy escribiendo una biblioteca de clases que otros desarrolladores en mi empresa usarán. Con el tiempo, algunos métodos se vuelven obsoletos y quiero que al usarlos en el código aparezca una advertencia o error de compilación, para que los desarrolladores entiendan que es mejor no usar el método y migrar a la nueva API.
Indíquenme cómo hacerlo correctamente en C#. ¿Se necesita un atributo especial? ¿Puedo especificar el texto del mensaje que se mostrará en el IDE? ¿Y es posible hacer que el uso del método antiguo no solo genere una advertencia, sino un error de compilación?
Ejemplo: tengo un método antiguo `GetData(int id)` que devuelve datos, y un nuevo método `FetchData(int id, bool useCache)`. Quiero que todos los que escriban `GetData(5)` vean una advertencia: "El método GetData está obsoleto. Use FetchData con el parámetro useCache: false".
¡Gracias de antemano por la ayuda!
<<>>
Uso del atributo