Junior — Middle
როგორ შეიძლება განახორციელოს თვისების ცვლილებების შეტყობინების მექანიზმი მონაცემთა მოდელებში .NET-ში?
sobes.tech AI
პასუხი 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-ის განახლებისთვის.