2012-06-25 3 views
0

Я пытаюсь использовать службу Netflix Odata с WP71, но это не работает. Что случилось с этим кодом?Использование сервиса Netflix Odata с WP71

private const string NETFLIX_CATALOG_URI = "http://odata.netflix.com/v2/Catalog/";

public ObservableCollection<Title> SearchByTitle(string searchKey) 
    { 
     NetflixCatalog catalog = new NetflixCatalog(new Uri(NETFLIX_CATALOG_URI)); 

     var query = catalog.Titles.Where(t => t.Name.Contains(searchKey)); 

     DataServiceCollection<Title> titles = new DataServiceCollection<Title>(catalog); 
     titles.LoadAsync(query); 
     return titles; 
    } 
+1

Можете ли вы, чтобы быть более конкретным, чем просто "Не работает"? Как он себя ведет, и как вы ожидаете, что он будет себя вести. Если вы получите исключение, что это такое, и желательно, чтобы он также поставил его. –

+0

Извините, что я подразумевал под «нерабочим», так это то, что я не получаю никаких результатов. У меня нет никаких исключений. – Ols1

+0

Вы ожидаете завершения операции async? Или подключить привязку данных, чтобы при распространении данных в пользовательский интерфейс? Я попытался бы зарегистрировать даже обработчик в завершенном событии и посмотреть, будет ли он вызван, и каково содержимое коллекции. –

ответ

1

Если посмотреть на запрос HTTP сгенерированным в Linq, вы заметите, что формат не поддерживается Netflix. Это будет работать, если вы изменить его на:

var query = catalog.Titles.Where(t => t.Name.StartsWith(searchKey)); 

Но, конечно, это не совсем поиска вы хотите ... и я ищу ответ на это тоже.