Book Image

Beginning C# 7 Hands-On ??? Advanced Language Features

By : Tom Owsiak
Book Image

Beginning C# 7 Hands-On ??? Advanced Language Features

By: Tom Owsiak

Overview of this book

Beginning C# 7 Hands-On – Advanced Language Features assumes that you’ve mastered the basic elements of the C# language and that you're now ready to learn the more advanced C# language and syntax, line by line, in a working Visual Studio environment. You'll learn how to code advanced C# language topics including generics, lambda expressions, and anonymous methods. You'll learn to use query syntax to construct queries and deploy queries that perform aggregation functions. Work with C# and SQL Server 2017 to perform complex joins and stored procedures. Explore advanced file access methods, and see how to serialize and deserialize objects – all by writing working lines of code that you can run within Visual Studio. This book is designed for beginner C# developers who have mastered the basics now, and anyone who needs a fast reference to using advanced C# language features in practical coding examples. You'll also take a look at C# through web programming with web forms. By the time you’ve finished this book, you’ll know all the critical advanced elements of the C# language and how to program everything from C# generics to XML, LINQ, and your first full MVC web applications. These are the advanced building blocks that you can then combine to exploit the full power of the C# programming language, line by line.
Table of Contents (35 chapters)
Title Page
Credits
About the Author
www.PacktPub.com
Customer Feedback
Preface

Creating a generics interface class


Next, go to Solution Explorer. Right-click on the name of the website, select Add, and then click on Class. Name the class GenInterface and then click on OK. When the Visual Studio message comes up, click on Yes. Remember, this is just an example.

The code for the GenInterface class is really complex. I'll create it now line-by-line, explaining what I'm doing and why I'm doing it.

First, delete everything except using System; at the very top. Next, you'll make the class called Quad for a four-sided shape of some kind. Enter the following after using System:

public class Quad : IComparable<Quad>

This needs System so that we can use IComparable. If you right-click on it and select Go To Definition in the drop-down menu (F12), you can see the definition of this thing. You will see namespace System near the top, and the public intCompareTo (T other); function after the Returns definition, as shown in Figure 3.3.2:

Figure 3.3.2: The definition of IComparable...