Мне нужна помощь с DataServiceCollection и методом LoadAsync () - PullRequest
1 голос
/ 22 июля 2011

Мне нужна помощь с классом DataServiceCollection (http://msdn.microsoft.com/en-us/library/ee474331(v=vs.92).aspx) и методом LoadAsync () (http://msdn.microsoft.com/en-us/library/ee652610(v=vs.95).aspx)) В документации MSDN я обнаружил: «Метод LoadAsync можно вызывать только один раз в потоке пользовательского интерфейса. Этот метод нельзя вызывать снова до тех пор, пока не будет вызвано событие LoadCompleted. Событие LoadCompleted возникает независимо от того, успешно выполняется запрос». Я делаю следующее public void LoadCategories () {

        Categories = new DataServiceCollection<Category>(context);

       Categories.LoadAsync(categoriesUri);

        Categories.LoadCompleted += (sender, args) =>
        {
            if (args.Error != null)
            {
                Debug.WriteLine("Requesting pictures failed. " + args.Error.Message);
            }
            else
            {
              LoadNewPictures();
            }
        };

публичный void LoadNewPictures () {

        _newPictures = new DataServiceCollection<Picture>(context);

       _newPictures.LoadAsync(picturesUri);

        _newPictures.LoadCompleted += (sender, args) =>
        {
            if (args.Error != null)
            {
                Debug.WriteLine("Requesting pictures failed. " + args.Error.Message);
            }
            else
            {
                IsDataLoaded = true;
            }
        };

    }

Но это не работает, я получаю только коллекцию категорий. Кто-нибудь может мне помочь?

1 Ответ

2 голосов
/ 09 августа 2011

Для scrore:)

Попробуйте назначить событие LoadComplete до вызова LoadAsync.Может быть, LoadAsync по тем или иным причинам возвращает их, не давая возможности вызвать ваш LoadCompleted?

...