Sobes.tech
Junior — Middle

Hogyan valósítható meg egy tulajdonságváltozás értesítési mechanizmus adatmodellekben a .NET-ben?

sobes.tech MI

Válasz az MI-től

A .NET-ben az adatmodellekben a tulajdonságváltozások értesítésére általában az INotifyPropertyChanged interfészt használják. Ez meghatározza a PropertyChanged eseményt, amely akkor hívódik meg, amikor egy tulajdonság értéke megváltozik.

Implementációs példa:

using System.ComponentModel;

public class Person : INotifyPropertyChanged
{
    private string name;
    public string Name
    {
        get => name;
        set
        {
            if (name != value)
            {
                name = value;
                OnPropertyChanged(nameof(Name));
            }
        }
    }

    public event PropertyChangedEventHandler PropertyChanged;

    protected void OnPropertyChanged(string propertyName)
    {
        PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(propertyName));
    }
}

Amikor a Name tulajdonság értéke megváltozik, a OnPropertyChanged metódus hívódik, amely értesíti a feliratkozottakat a változásról. Ezt gyakran használják az MVVM mintában az UI frissítésére, amikor az adatok változnak.