Дізнатися про LINQ [закрито]


189

Огляд

Одна з речей, про яку я багато запитувала на цьому сайті, це LINQ . Питання, які я задавав, були широкими і різноманітними і часто не мають за собою багато контексту. Отож, намагаючись закріпити знання, здобуті в Linq, я публікую це питання з метою збереження та оновлення його додатковою інформацією, коли я продовжую дізнаватися про LINQ.

Я також сподіваюся, що це виявиться корисним ресурсом для інших людей, які хочуть дізнатися про LINQ.

Що таке LINQ?

Від MSDN :

Проект LINQ - це кодове ім'я для набору розширень до .NET Framework, що охоплюють інтегровані мовою операції запиту, набору та перетворення. Він розширює C # і Visual Basic з синтаксисом рідної мови для запитів і надає бібліотекам класів, щоб скористатися цими можливостями.

Це означає, що LINQ пропонує стандартний спосіб запиту різних джерел даних, використовуючи загальний синтаксис.

Які аромати LINQ існують?

В даний час існує декілька різних постачальників LINQ, які надає Microsoft:

Є ще багато інших, багато з яких перераховані тут .

Які переваги?

  • Стандартизований спосіб запиту декількох джерел даних
  • Складіть час безпеки запитів
  • Оптимізований спосіб виконання заданих операцій на об'єктах пам'яті
  • Можливість налагодження запитів

То що я можу зробити з LINQ?

Chook надає спосіб виведення файлів CSV.
Джефф показує, як видалити дублікати з масиву.
Боб отримує чіткий упорядкований список із даних, опублікований
Marxidad, показує, як сортувати масив.
Дана отримує допомогу в реалізації швидкого сортування за допомогою Linq

З чого почати?

Короткий зміст посилань із запитання GateKiller наведено нижче :
Скотт Гетрі пропонує вступ до Linq у своєму блозі
Огляд LINQ на MSDN

ChrisAnnODell пропонує перевірити:

Що мені потрібно використовувати LINQ?

На даний момент Linq доступний у VB.Net 9.0 та C # 3.0, тому для отримання всіх переваг вам знадобиться Visual Studio 2008 або новішої версії. (Ви завжди можете написати свій код у блокноті та компілювати за допомогою MSBuild)

Існує також інструмент під назвою LinqBridge, який дозволить вам запускати Linq як запити в C # 2.0.

Поради та рекомендації з використанням LINQ

У цьому питанні є кілька складних способів використання LINQ


+1 за чудову публікацію та посилання на блог ScottGu. Це чудовий ресурс, і де я спочатку вивчив LINQ.
Еван Плейс

Hooked On LINQ переходить на якийсь японський сайт. Перекладач google розмовляє про рамки та інші речі в стилі, які nsfw. : Однак SI не може його редагувати чомусь.
Шейн

Відповіді:


12

Чому цей смачний сайт.com переспрямовує на назву розширення під назвою Dmail у магазині хрому? oO Ви маєте на увазі замість del.icio.us ?
Soner


4

Отримайте книгу Linq в дії, вона легко читається для кодування книги і дійсно навчає, як використовувати Linq та нові функції .NET 3.5 деяких класних частин, які вони вкладають для мови.


4

Кілька порад LINQ:

  • Застосуйте фільтри перед приєднанням, щоб поліпшити ефективність запитів
  • Фільтруйте запити LINQ, використовуючи порівняння посилань на об'єкти
  • Застосовуйте агрегати до порожніх колекцій у LINQ до SQL-запитів
  • Затримка завантаження властивості в LINQ в SQL
  • Використовуйте функції з табличним значенням із увімкненим нетерплячим завантаженням
  • Розмістіть приєднання у правильному порядку у запиті LINQ до об’єктів
  • Складіть запит LINQ всередині циклу

http://www.aspnetpro.com/articles/2009/04/asp200904zh_f/asp200904zh_f.asp


4

Перевага IMHO, але важлива перевага - це ефективність кодування LINQ, наприклад, скільки можна досягти з таким невеликим кодом. Я особисто вважаю синтаксис запиту легким для читання та розуміння.



3

Я думаю, відповідь "Які аромати LINQ є?" є неповним. Перш за все, ви можете створити власний «аромат». Так, це складне завдання, але зараз існує маса різних реалізацій LINQ.

Ось список існуючих постачальників LINQ (плюс ще кілька ресурсів для вивчення LINQ) у блозі Чарлі Калверта: Посилання на LINQ .

А також є відмінна серія публікацій блогу Метта Уоррена про те, як створити власного постачальника LINQ: LINQ: Створення серії постачальників послуг IQueryable


2

Мої 2 центи, прочитайте глави «11 Вирази запитів та LINQ до об’єктів» та «12 LINQ поза колекціями» у книзі «C # в глибині», щоб зрозуміти, як працює LINQ.


0

Для практики Linq

Якщо ви хочете попрацювати на LINQ з вправами та відповідями, їх дуже просто налаштувати і, на мою думку, приголомшливо:

https://github.com/walkhard/linq-exercises

Завантажте з git, відкрийте у Visual Studio. Ваше завдання - зробити тести пройти.

[розкриття інформації: я навчився деякого зв'язку з нього, і я беру свій внесок у проект, так що так, я думаю, що це дивовижний, швидкий та ефективний спосіб вчитися.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.