Booking options
£93.99
£93.99
On-Demand course
4 hours
All levels
Master LINQ to entities, LINQ to objects, LINQ to XML, functional programming relying on LINQ
Extension methods were introduced in C# 3 and since then have become an indispensable part of the .NET platform. This enormously powerful feature has allowed us to build a whole framework built upon it called LINQ or Language Integrated Query. I've seen many code bases that avoid using LINQ and rely on the old procedural style of programming. If you still feel yourself uncomfortable with LINQ or you want to improve your understanding of LINQ, then this course is for you. As you might know, LINQ was inspired by functional paradigm and F# in particular. So, this course is not only about LINQ but about the fundamentals of functional programming as well. This course covers: •The basics of LINQ: extension methods, the idea of pipelining, IEnumerable, implementing our own extension, query syntax, pitfalls of LINQ operations, how to alter a list
•Generating data streams: Enumerable class and its main operations, implementing your own extension which generates a stream of data
•Filtering, ordering, projecting: parsing a CSV file, then, First, Last, Single, TakeWhile, SkipWhile, Any, All, Contains, SequenceEqual, Select and SelectMany
•Joining, grouping, aggregating: Join, Group, GroupJoin, Zip, Sum, Average, Min, Max
•Conversions: OfType, Cast, ToArray, ToList, ToDictionary, ToLookup, AsEnumerable, AsQueryable
•LINQ to XML: overview, generating XML from a collection, reading XML
•EF and LINQ: expression trees, inserting into and reading from a database
•Extendibility in C#: what is functional programming (FP), purity and side effects, extending IDisposable, general-purpose extensions, extending StringBuilder, Primitive Obsession Enroll now and start learning LINQ and the fundamentals of functional programming. All the codes and supporting files for this course are available at - https://github.com/PacktPublishing/Complete-Practical-LINQ-Tutorial-in-C-
How to make your code better by applying functional style
Fundamentals of functional programming
Joining, grouping, and aggregating with LINQ
Converting with LINQ
This course is designed for any developer who wants to use the full power of LINQ. It requires an understanding of the basics of C#
This will be a hands-on course walking you through the different parts of LINQ framework.
Understand all the LINQ operations * Filtering, ordering and projecting with LINQ * Aggregating with LINQ
https://github.com/packtpublishing/complete-practical-linq-tutorial-in-c-
Ilya Fofanov began his career as a postgraduate student participating in the Microsoft ImagineCup contest. He's been working with the .NET platform since 2003 and has been professionally architecting and implementing software for nearly 7 years, primarily based on the .NET platform. He is passionate about building rich and powerful applications using modern technologies. Ilya is a Microsoft-certified specialist in Windows Applications and Service Communication Applications and one of the coordinators of the MskDotNet User Group in Moscow.
1. Introduction to LINQ
1. Outline Introduction to LINQ: Outline |
2. LINQ Intro Introduction to LINQ: LINQ Intro |
3. Extension Methods Introduction to LINQ: Extension Methods |
4. Pipelining Introduction to LINQ: Pipelining |
5. Why LINQ? Introduction to LINQ: Why LINQ? |
6. The role of IEnumerable Introduction to LINQ: The role of IEnumerable |
7. Implementing our own LINQ Extensions Introduction to LINQ: Implementing our own LINQ Extensions |
8. Parsing a CSV-file Introduction to LINQ: Parsing a CSV-file |
9. Named Methods vs Anonymous Methods vs Lambda Introduction to LINQ: Named Methods vs Anonymous Methods vs Lambda |
10. Query Syntax Introduction to LINQ: Query Syntax |
11. Yield Return Introduction to LINQ: Yield Return |
12. LINQ. Deferred Execution Introduction to LINQ: LINQ. Deferred Execution |
13. Exceptions and Deferred Execution Introduction to LINQ: Exceptions and Deferred Execution |
14. LINQ. Closures with for and foreach loops Introduction to LINQ: LINQ. Closures with for and foreach loops |
15. Multiple Enumeration Pitfall Introduction to LINQ: Multiple Enumeration Pitfalls |
16. Altering Lists Introduction to LINQ: Altering Lists |
17. Conclusion Introduction to LINQ: Conclusion |
2. Generating Data Streams
1. Outline Generating Data Streams: Outline |
2. Empty, Range, Repeat Generating Data Streams: Empty, Range, Repeat |
3. Custom Generator Generating Data Streams: Custom Generator |
4. Conclusion Generating Data Streams: Conclusion |
3. Filtering, Ordering, Projecting
1. Outline Filtering, Ordering, Projecting: Outline |
2. Select Filtering, Ordering, Projecting: Select |
3. Where Filtering, Ordering, Projecting: Where |
4. ThenBy Filtering, Ordering, Projecting: ThenBy |
5. First, Last, Single, OrDefault Filtering, Ordering,Projecting: First, Last, Single, OrDefault |
6. TakeWhile, SkipWhile Filtering, Ordering, Projecting: TakeWhile, SkipWhile |
7. SequenceEqual Filtering, Ordering, Projecting: SequenceEqual |
8. Distinct Filtering, Ordering,Projecting: Distinct |
9. Any, All, Contains Filtering, Ordering, Projecting: Any, All, Contains |
10. SelectMany Filtering, Ordering, Projecting: SelectMany |
11. ElementAt and Counting Filtering, Ordering, Projecting: ElementAt and Counting |
12. Conclusion Filtering, Ordering, Projecting: Conclusion |
4. Joining, Grouping, Aggregating
1. Outline Joining, Grouping, Aggregating: Outline |
2. Join Joining, Grouping, Aggregating: Join |
3. GroupBy Joining, Grouping, Aggregating: GroupBy |
4. GroupJoin Joining, Grouping, Aggregating: GroupJoin |
5. Zip Joining, Grouping, Aggregating: Zip |
6. Min, Max, Sum, Average Joining, Grouping, Aggregating: Min, Max, Sum, Average |
7. Concat and Union Joining, Grouping, Aggregating: Concat and Union |
8. Intersect and Except Joining, Grouping, Aggregating: Intersect and Except |
9. Conclusion Joining, Grouping, Aggregating: Conclusion |
5. Conversions
1. Outline Conversions: Outline |
2. OfType and Cast Conversions: OfType and Cast |
3. ToArray, ToList, ToDictionary, ToLookup Conversions: ToArray, ToList, ToDictionary, ToLookup |
4. Pitfalls of Conversion Conversions: Pitfalls of Conversion |
5. Conclusion Conversions: Conclusion |
6. LINQ TO XML
1. Outline LINQ TO XML: Outline |
2. XML Document Structure LINQ TO XML: XML Document Structure |
3. Creating XML from a Collection LINQ TO XML: Creating XML from a Collection |
4. Refactoring Code LINQ TO XML: Refactoring Code |
5. Reading XML LINQ TO XML: Reading XML |
6. Conclusion LINQ TO XML: Conclusion |
7. LINQ to Entities
1. Outline LINQ to Entities: Outline |
2. Preparing Project LINQ to Entities: Preparing Project |
3. Inserting and Reading LINQ to Entities: Inserting and Reading |
4. Pitfalls of LINQ to Entities LINQ to Entities: Pitfalls of LINQ to Entities |
5. Expressions, AsEnumerable and AsQueryable LINQ to Entities: Expressions, AsEnumerable and AsQueryable |
6. Conclusion LINQ to Entities: Conclusion |
8. Extendibility in C#
1. Outline Extendibility in C#: Outline |
2. Defining Functional Programming Extendibility in C#: Defining Functional Programming |
3. Functions, Functions, and Functions Again Extendibility in C#: Functions, Functions, and Functions Again |
4. Why Functional Programming Extendibility in C#: Why Functional Programming |
5. Immutability Extendibility in C#: Immutability |
6. Purity and Side Effects Extendibility in C#: Purity and Side Effects |
7. Extending IDisposable Extendibility in C#: Extending IDisposable |
8. General Extensions Extendibility in C#: General Extensions |
9. Extending StringBuilder Extendibility in C#: Extending StringBuilder |
10. Primitive Obsession Extendibility in C#: Primitive Obsession |
11. Conclusion Extendibility in C#: |