區域性

關鍵字 partial 可以在類,結構或介面的型別定義期間使用,以允許將型別定義拆分為多個檔案。這對於在自動生成的程式碼中合併新功能非常有用。

File1.cs

namespace A
{
    public partial class Test
    {
        public string Var1 {get;set;}
    }
}

File2.cs

namespace A
{
    public partial class Test
    {
        public string Var2 {get;set;}
    }
}

注意: 類可以拆分為任意數量的檔案。但是,所有宣告必須位於相同的名稱空間和相同的程式集下。

也可以使用 partial 關鍵字宣告方法的部分方法。在這種情況下,一個檔案將只包含方法定義,另一個檔案將包含實現。

部分方法將其簽名定義在部分型別的一部分中,並且其實現在該型別的另一部分中定義。部分方法使類設計者能夠提供類似於事件處理程式的方法鉤子,開發人員可以決定是否實現。如果開發人員不提供實現,則編譯器會在編譯時刪除簽名。以下條件適用於部分方法:

  • 部分型別的兩個部分中的簽名必須匹配。
  • 該方法必須返回 void。
  • 不允許訪問修飾符。部分方法是隱式私有的。

- MSDN

File1.cs

namespace A
{
    public partial class Test
    {
        public string Var1 {get;set;}
        public partial Method1(string str);
    }
}

File2.cs

namespace A
{
    public partial class Test
    {
        public string Var2 {get;set;}
        public partial Method1(string str)
        {
            Console.WriteLine(str);
        }
    }
}

注意: 包含 partial 方法的型別也必須宣告為 partial。