C# Local Fonction (Fonksiyon)

Local fonksiyon özelliği C# 7.0 ile sunulmuştur. Önceden tanımlanmış bir metodun gövdesi içinde bir metot bildirmenizi sağlar ve yalnızca bu metot içinde erişilebilir. Local bir fonksiyon normal bir metot gibi görünür, ancak erişim belirliyecisi yoktur, çünkü local bir fonksiyon her zaman yalnızca bildiren meton içinden erişilebilir.

Örnek:

Aşağıda ki örnek te metot için bir girilen kelimenin ilk harfini büyük ile başlayıp başlamadığını kontrol eden bir local fonksiyon tanımlanmıştır.

internal class Program
{
    private static void Main(string[] args)
    {
        LocalFunctionExample();
    }

    public static void LocalFunctionExample()
    { 
        bool StartWithUppercaseChar(string name)
        {
            return Char.IsUpper(name[0]);
        }

        List<string> names = new List<string>()
        {
            "alkan fatih",
            "Fatih alkan"
        };

        foreach (string name in names)
        {
            Console.WriteLine(name + " Büyük Harf İle Başlıyor Mu: " + StartWithUppercaseChar(name));
        }
    }
}

Sonuç:

alkan fatihBüyük Harf İle: False
Fatih alkanBüyük Harf İle: True

Özet

Bazı durumlarda, çok özel işlevleri kapsüllemeniz ve yeniden kullanmanız gerektiğinde, local fonksiyonlar size oldukça yardımcı olabilir.