แอตทริบิวต์ที่ล้าสมัย ทำเครื่องหมายองค์ประกอบต่างๆ เช่น คลาส เมธอด คุณสมบัติ ฟิลด์ ผู้รับมอบสิทธิ์ และอื่นๆ อีกมากมายภายในโค้ดของเราว่าเลิกใช้แล้วหรือล้าสมัย แอตทริบิวต์ถูกอ่านในเวลารวบรวมและใช้เพื่อสร้างคำเตือนหรือข้อผิดพลาดให้กับนักพัฒนา
คุณลักษณะนี้สามารถช่วยได้หากเราเคยต้องการให้แน่ใจว่าโปรแกรมเมอร์ใช้วิธีการที่ใหม่กว่า นอกจากนี้ยังทำให้ง่ายขึ้นเมื่อเราเปลี่ยนจากวิธีที่เก่ากว่าเป็นวิธีที่ใหม่กว่า การทำเครื่องหมายรายการว่าล้าสมัยจะเตือนผู้ใช้ว่าองค์ประกอบของโปรแกรมจะถูกลบออกในฐานรหัสรุ่นต่อๆ ไป
พบแอตทริบิวต์นี้ใน เนมสเปซระบบ . แอตทริบิวต์ Obsolete ตกแต่งองค์ประกอบของโปรแกรมโดยวางคำว่า "ล้าสมัย" ไว้ด้านบนในวงเล็บเหลี่ยม เนื่องจากเป็นแอตทริบิวต์ เราจึงใช้ Obsolete หรือ ObsoleteAttribute ได้
แอตทริบิวต์ที่ล้าสมัยมีสามตัวสร้าง -
-
[ล้าสมัย] − เป็นตัวสร้างไม่มีพารามิเตอร์และเป็นค่าเริ่มต้นโดยใช้แอตทริบิวต์นี้
-
[ล้าสมัย(ข้อความสตริง)] - ในรูปแบบนี้ เราได้รับข้อความว่าเหตุใดจึงเลิกใช้วิธีนี้
-
[เลิกใช้แล้ว (ข้อความสตริง ข้อผิดพลาดแบบบูล)] - ในรูปแบบนี้พร้อมกับข้อความ เราควบคุมได้ว่าจะให้คอมไพเลอร์ส่งข้อผิดพลาดระหว่างการรวบรวมหรือไม่
ตัวอย่าง
using System; namespace DemoApplication{ class Demo{ static void Main(string[] args){ ObseleteMethod(); ObseleteMethodWithMessage(); ObseleteMethodWithMessageAndNoFail(); ObseleteMethodWithMessageAndFail(); } [Obsolete] public static void ObseleteMethod() { } [Obsolete("This Method is Deprecated")] public static void ObseleteMethodWithMessage() { } [Obsolete("This Method is Deprecated", false)] public static void ObseleteMethodWithMessageAndNoFail() { } [Obsolete("This Method is Deprecated", true)] public static void ObseleteMethodWithMessageAndFail() { } } }
ผลลัพธ์
ผลลัพธ์ของโค้ดด้านบนคือ