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

Adding delegates


In the first stage, you have to add delegates. While you could put these into a separate file, for our purposes let's just place them here. So, enter the following above the line beginning with public partial class...:

public delegate bool Compare(double x, double y);

Remember, delegates are function or method wrappers, actually. Then, directly below this line, enter the following:

public delegate double Multiply(double x, double y);

You can see here that we have two delegates. One returns a Boolean data type, and the other one returns a double data type.

Setting up the variables

Next, inside the event handler for Button1_Click, we'll make two variables: x (which we set to 10), and y, which equals 25. So, enter the following between the set of curly braces:

double x = 10, y = 25;

Making objects of the delegate type

Now, the next thing that we will do is to enter the following below the preceding line:

Compare comp = (a, b) => (a == b);

As you begin to enter Compare, notice from...