Learn your way! Get started

C# 2012, Part 4: Language Changes and Updates

with expert Joe Mayo

Watch trailer

C# 2012, Part 4: Language Changes and Updates Trailer

Course at a glance

Included in these subscriptions:

  • Dev & IT Pro Video
  • Dev & IT Pro Power Pack
  • Power Pack Plus

Release date Release date 12/24/2012
Level Level Intermediate
Runtime Runtime 1h 10m
Platform Platform Major browsers on Windows Major browsers on Windows Major browsers on Mac OSX Major browsers on Mac OSX Mobile Devices Mobile Devices
Closed captioning Closed captioning Included
Transcript Transcript Included
eBooks / courseware eBooks / courseware Included
Hands-on labs Hands-on labs Included
Sample code Sample code Included
Exams Exams Included

Enterprise Solutions
Enterprise Solutions

Need reporting, custom learning tracks, or SCORM? Learn More

Course description

In this course, you’ll learn how named and optional parameters give you flexibility in calling methods. You’ll see how caller information attributes give you information about the code that is calling a method. Another set of features you’ll see are covariance and contravariance and how they allow you to implicitly convert return values and parameters, respectively, between types. We’ll also discuss how embedded interop types reduce the size of your deployable code and then you’ll see a few new C# compiler command-line options. You’ll learn about new .NET types like BigInteger, Complex, and Tuple. You’ll see how to perform just-in-time type initialization with Lazy<T>. The course will show you how to manage breakpoints and step through code with the debugger. Finally, we’ll cover the different build options and show you how to create custom build configurations of your own.


This course assumes that students understand the C# 3.0 syntax and have a basic understanding of the .NET Framework. No specific experience with Visual Studio 2012 is required.

Prepare for certification

This course will help you prepare for:
70-483 Programming in C#

This course will help you earn:
MCSD: Windows Store Apps

Meet the expert

Joe Mayo Joe Mayo is an author, independent consultant, and instructor specializing in Microsoft .NET and Windows 8 technology. He has several years of software development experience and has worked with .NET since July 2000. Joe has written books and contributes to magazines, such as CODE Magazine. He has been an active contributor to the .NET community for years, operating the C# Station Web site, authoring the LINQ to Twitter open source project, and speaking regularly at user groups and code camps. For his community contributions Microsoft has honored Joe with several Most Valuable Professional (MVP) Awards through the years.

Course outline

C# Changes and Updates

New Language Features (17:21)
  • Introduction (00:45)
  • Named and Optional Parameters (00:36)
  • Demo: Parameters (02:02)
  • Caller Information (00:55)
  • Demo: Caller Information (01:51)
  • Covariance and Contravariance (00:29)
  • Demo: Co and Contra variance (02:53)
  • Embedded Interop Assemblies (02:25)
  • Demo: Embedded Interop (02:11)
  • New Command Line Options (01:30)
  • Demo: Command Line Options (01:30)
  • Summary (00:09)
DOT NET and Changes (20:23)
  • Introduction (00:33)
  • New Types of Interest (00:53)
  • Demo: New Types of Interest (04:25)
  • Lazy Initialization (01:01)
  • Demo: Lazy Initialization (03:07)
  • New Generic Types (00:29)
  • Demo: New Generic Types (02:02)
  • Breaking Changes (01:22)
  • Demo: Breaking Changes (02:26)
  • Demo: Overloads (03:17)
  • Summary (00:43)
Essential Skills (32:49)
  • Introduction (00:39)
  • Debugging Tips (01:50)
  • Demo: Debugging Tips (02:35)
  • Demo: Managing Breakpoints (02:45)
  • Demo: Breakpoint Condition (01:07)
  • Demo: Changing Execution Point (01:58)
  • Debugger Windows (01:34)
  • Demo: Debugger Windows (02:48)
  • Demo: Autos Debugging Window (02:16)
  • Demo: Watch and Call Stack (02:03)
  • Demo: Immediate Window (03:20)
  • Building Code (01:56)
  • Demo: Building Code (07:39)
  • Summary (00:13)