Как эта индивидуальная ленивая нагрузка работает в C#?C#

Место общения программистов C#
Anonymous
Как эта индивидуальная ленивая нагрузка работает в C#?

Сообщение Anonymous »

Как работает этот код, и как этот делегат запускает операцию SELECT или JOIN? Не могли бы вы объяснить это? < /P>
public class Order
{
Action _lazyLoader;
Employee _employee;
public Order(Action lazyLoader) { _lazyLoader = lazyLoader; }

public Order() { }
public int Id { get; set; }
public int EmployeeId { get; set; }
public DateTime OrderDate { get; set; }

public Employee Employee
{
get => _lazyLoader.Load(this, ref _employee);
set => _employee = value;
}
}

public static class LazyLoadingExtension
{
public static TRelated Load(this Action loader, object entity, ref TRelated navigation, [CallerMemberName] string navigationName = null)
{
loader.Invoke(entity, navigationName);
return navigation;
}
}


Подробнее здесь: https://stackoverflow.com/questions/796 ... -work-in-c

Вернуться в «C#»