Search icon CANCEL
Subscription
0
Cart icon
Your Cart (0 item)
Close icon
You have no products in your basket yet
Save more on your purchases now! discount-offer-chevron-icon
Savings automatically calculated. No voucher code required.
Arrow left icon
Explore Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Conferences
Free Learning
Arrow right icon
Arrow up icon
GO TO TOP
C# 6 and .NET Core 1.0

You're reading from   C# 6 and .NET Core 1.0 Modern Cross-Platform Development

Arrow left icon
Product type Paperback
Published in Mar 2016
Publisher
ISBN-13 9781785285691
Length 550 pages
Edition 1st Edition
Languages
Arrow right icon
Toc

Table of Contents (20) Chapters Close

Preface 1. Hello, C#! Welcome, .NET Core! FREE CHAPTER 2. Speaking C# 3. Controlling the Flow, Converting Types, and Handling Exceptions 4. Using Common .NET Types 5. Using Specialized .NET Types 6. Building Your Own Types with Object-Oriented Programming 7. Implementing Interfaces and Inheriting Classes 8. Working with Relational Data Using the Entity Framework 9. Querying and Manipulating Data with LINQ 10. Working with Files, Streams, and Serialization 11. Protecting Your Data and Applications 12. Improving Performance and Scalability with Multitasking 13. Building Universal Windows Platform Apps Using XAML 14. Building Web Applications and Services Using ASP.NET Core 15. Taking C# Cross-Platform 16. Building a Quiz A. Answers to the Test Your Knowledge Questions B. Creating a Virtual Machine for Your Development Environment Index

Creating your own LINQ extension methods


In Chapter 7, Implementing Interfaces and Inheriting Classes, you learned how to create your own extension methods. To create LINQ extension methods, all you have to do is extend the IEnumerable<T> type.

Add a new Class Library project named Ch09_MyLINQExtensions. Rename the Class1.cs file to MyLINQExtensions.

Modify the class to look like the following code. Note that the ProcessSequence extension method doesn't actually modify the sequence because it exists only as an example. It would be up to you to process the sequence in whatever manner you want. The SummariseSequence extension method also doesn't do anything especially useful. It simply returns the number of items in the sequence by using the built-in LongCount extension method. Again, it would be up to you to decide exactly what this method should do and what type it should return:

using System.Collections.Generic;

namespace System.Linq
{
    public static class MyLINQExtensions
    {...
lock icon The rest of the chapter is locked
Register for a free Packt account to unlock a world of extra content!
A free Packt account unlocks extra newsletters, articles, discounted offers, and much more. Start advancing your knowledge today.
Unlock this book and the full library FREE for 7 days
Get unlimited access to 7000+ expert-authored eBooks and videos courses covering every tech area you can think of
Renews at $19.99/month. Cancel anytime