вам действительно не нужно это делать ...
import 'rxjs/add/operator/first';
this.esQueryService.getDocuments$.first().subscribe(() => {
event.enableButtonsCallback();
},
(err: any) => console.error(err)
);
this.getDocuments(query, false);
first () гарантирует, что блок подписки вызывается только один раз (после чего он будет как если бы вы никогда не подписались), точно то же, что и обещания, тогда ()
LINQ к объектам:
у меня есть намного больше я наклеенный Delicious.com .
Упомяните LINQ Объектам, так как Платформа Объекта ADO.NET будет важным модулем.NET.
Получите книгу Linq в Действии , это - легкое чтение для книги кодирования и действительно учит Вас, как использовать Linq и новые возможности.NET 3.5 некоторые прохладные части, которые они вставляют для языка.
Некоторые протесты об использовании LINQ к SQL:
Microsoft действительно уничтожила LINQ к SQL?
существуют также [приблизительно 112] противоречие о первой версии Платформа Объекта , включая прошение .
http://www.aspnetpro.com/articles/2009/04/asp200904zh_f/asp200904zh_f.asp
Я думаю, ответ на вопрос «Какие существуют разновидности LINQ?» неполный. Во-первых, вы можете создать свой «аромат». Да, это сложная задача, но сейчас существует множество различных реализаций LINQ.
Вот список существующих поставщиков LINQ (плюс еще несколько ресурсов по изучению LINQ) в блоге Чарли Калверта: Ссылки на LINQ .
А также есть отличная серия сообщений в блоге Мэтта Уоррена о том, как создать собственного поставщика LINQ: LINQ: Создание серии поставщиков IQueryable
ИМХО, упускаемое из виду, но важное преимущество - это эффективность кодирования LINQ, например, сколько всего можно сделать с таким маленьким кодом. Я лично считаю синтаксис запроса простым для чтения и понимания.