Sobes.tech
Back to questions
Junior — Middle
60

Каким образом можно реализовать механизм уведомления об изменениях свойства в моделях данных в .NET?

Companies where asked
Титул-2005

Answer from AI

sobes.tech AI

В .NET для реализации уведомления об изменениях свойства в моделях данных обычно используется интерфейс INotifyPropertyChanged. Он определяет событие PropertyChanged, которое вызывается при изменении значения свойства.

Пример реализации:

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));
    }
}

При изменении свойства Name вызывается метод OnPropertyChanged, который уведомляет подписчиков о том, что свойство изменилось. Это часто используется в MVVM-паттерне для обновления UI при изменении данных.