1. 程式人生 > >C# 中使用 Obsolete 標誌 程式碼過期

C# 中使用 Obsolete 標誌 程式碼過期

今天對專案做了一次更新,建立了一個新的類來替換原來的工作。但是又不想刪掉,一旦刪掉在SVN上就不存在了。決定還是用 Obsolete來標誌程式碼過期吧。

MSDN上關於Obsolete 標籤的介紹

https://msdn.microsoft.com/zh-cn/library/22kk2b44%28VS.80%29.aspx

Obsolete 屬性將某個程式實體標記為一個建議不再使用的實體。每次使用被標記為已過時的實體時,隨後將生成警告或錯誤,這取決於屬性是如何配置的。

示例程式碼中分別對 類、函式進行 Obsolete 標記

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace ObsoleteTest
{
    [Obsolete("A is Obsolete,Use C")]
    class A{}

    [Obsolete("B is Obsolete,Use C",true)]
    class B{}

    class C{}
    class Program
    {
        [Obsolete("FuncA is Obsolete,Use FunC")]
        static void FuncA() { }

        [Obsolete("FuncB is Obsolete,Use FunC",true)]
        static void FuncB() { }

        static void FuncC() { }

        static void Main(string[] args)
        {
            FuncA();
            FuncB();

            A a = new A();
            B b = new B();
        }
    }
}

進行編譯之後,VS提示錯誤和警告