Megosztás a következőn keresztül:


részleges metódus (C# referencia)

A részleges metódus aláírása egy részleges típus egyik részében, a implementáció pedig a típus egy másik részében van definiálva. A részleges metódusok lehetővé teszik, hogy az osztálytervezők az eseménykezelőkhöz hasonlóan olyan metódushogokat biztosítsanak, amelyeket a fejlesztők implementálhatnak vagy sem. Ha a fejlesztő nem biztosít implementációt, a fordító fordításkor eltávolítja az aláírást. A részleges módszerekre a következő feltételek vonatkoznak:

  • A deklarációknak a környezeti kulcsszó részlegesével kell kezdődniük.

  • A részleges típus mindkét részén meg kell egyeznie az aláírásoknak.

A partial kulcsszó nem engedélyezett konstruktorokon, véglegesítőkön, túlterhelt operátorokon, tulajdonságdeklarációkon vagy eseménydeklarációkon.

Az alábbi esetekben nem szükséges részleges metódus implementálása:

Minden olyan metódusnak, amely nem felel meg az összes korlátozásnak (például public virtual partial void metódusnak), implementálást kell biztosítania.

Az alábbi példa egy részleges osztály két részében definiált részleges metódust mutat be:

namespace PM
{
    partial class A
    {
        partial void OnSomethingHappened(string s);
    }

    // This part can be in a separate file.
    partial class A
    {
        // Comment out this method and the program
        // will still compile.
        partial void OnSomethingHappened(String s)
        {
            Console.WriteLine("Something happened: {0}", s);
        }
    }
}

A részleges metódusok a forrásgenerátorokkal együtt is hasznosak lehetnek. Egy regex például a következő mintával határozható meg:

[GeneratedRegex("(dog|cat|fish)")]
partial bool IsPetMatch(string input);

További információ: Részleges osztályok és metódusok.

Lásd még