Как дождаться окончания процесса в EntityFramework?

Я работаю с EntityFramework и Silverlight, и я имею дело с этой ситуацией. Когда я пытаюсь загрузить данные из EntitySetЯ должен получить данные из обратного вызова.

Теперь мне нужно получить данные немедленно, я имею в виду подождать, пока процесс не закончится.

В следующем коде часть, которую я хотел бы подождать Objectives имущество. Или я не знаю, смогу ли я преобразовать метод обратного вызова в IAsyncResult, или что-то типа того.

public class EntityService : IEntityService
{
    public EntityService()
    {
        _entities = new DatabaseDomainContext();
    }

    private DatabaseDomainContext _entities;
    public DatabaseDomainContext Entities
    {
        get { return _entities; }
        set { _entities = value; }
    }

    private EntityList<Objective> _objectives;
    public ObservableCollection<Objective> Objectives
    {
        get
        {
            if (_objectives == null)
            {
                var loadOp = _entities.Load(_entities.GetObjectivesQuery()/*, Callback, true*/);
                _objectives = new EntityList<Objective>(_entities.Objectives, loadOp.Entities);
            }

            return _objectives;
        }
    }
}

1 ответ

Решение

Реализуйте INotifyPropertyChanged. Когда результаты вернутся, поднимите NotifyPropertyChanged.

Другие вопросы по тегам