Preferred method of contact:

Advanced C# Programming Training: Programming Extended Features



Course Number



4 Days

PDF Add to WishList

Apply C# extended features, including LINQ and EF, to effectively integrate object-oriented and data-manipulation capabilities. In this training course, you will use specialized C# keywords and language features, such as lambda expressions, extension methods, generic classes and delegates, universal functions, and anonymous types, to optimize your data access, productivity, and application performance.

You Will Learn How To

  • Streamline data-centric applications with C# extended features and the Entity Framework (EF)
  • Apply lambda expressions and extension methods
  • Exploit LINQ keywords to filter and order data
  • Generate dynamic enumerations in developer-written generic classes

Important Course Information

  • Recommended Experience

    • Knowledge at the level of:
    • You should know how to:
      • Construct, compile, and execute C# Windows Forms and/or Web applications using the Visual Studio integrated environment
      • Design and implement a modestly complex (1000+ lines) program in the C# language
      • Apply solid object-oriented development techniques, including encapsulation, inheritance, interfaces, and polymorphism
      • Produce applications that employ key parts of the .NET framework library
  • Software

    • This course uses Visual Studio 2013, but is useful to those using an earlier version

Course Outline

  • Introduction
  • Existing data-access technologies
  • Generic and nongeneric collections
  • Harnessing C# Language Features

Language shortcuts

  • Applying auto-implemented properties
  • Benefiting from implied-type declaration

Streamlining program logic

  • Instantiating entity objects
  • Simplifying construction with object initializers
  • Employing Extension Methods for Middle-Tier Data Manipulation

Filtering and ordering data with lambda expressions

  • Comparing delegates and lambda expressions
  • Calling Count, Reverse, Union, Except and other extension methods

Applying extended features

  • Making code more flexible with delegates
  • Parameterizing delegates and lambda expressions
  • Streamlining code with Func<T,R> generic delegates
  • Leveraging LINQ Query Keywords

Syntax and semantics

  • Coding LINQ queries
  • Ordering data and objects
  • Filtering with from, where, orderby and group

Iterating collections

  • Interfacing between C# and LINQ using IEnumerable<T>
  • Issuing queries on entity and spatial types
  • Attaching to Databases via the Entity Framework

Comparing ADO.NET with LINQ

  • DataSet objects vs. generic lists
  • SqlDataReader vs. IEnumerable<T>
  • Implementing accessors to separate the data tier

Connecting to and reading from a database

  • Establishing an ObjectContext and DbContext objects
  • Correlating entity classes and data tables
  • Executing stored procedures and table-valued functions

The Object Relational Designer tool

  • Mapping data tables to entity classes (table-first) and object models to database tables (code-first)
  • Inheriting with many-per-table and table-per-type (TPT)

Updating a database

  • Inserting, updating and deleting data
  • Error handling and exceptions
  • Committing and rolling back transactions
  • Enumerations and Generic Classes

Examining enum

  • Comparing IEnumerable<T> and IEnumerator<T>
  • Generating dynamic enumeration
  • The yield keyword

Writing generic classes

  • Reducing duplicate classes
  • Implementing a generic fast enumerator
  • Processing Data with LINQ Queries

Manipulating data

  • Combining and aggregating similar data with group
  • Performing inner, outer and group joins
  • Generating data subsets with the into clause

Advanced LINQ techniques

  • Creating anonymous query results
  • Retrieving composite views using nested from clauses
  • Issuing LINQ geographic/geometric queries on spatial types
  • Applying LINQ to XML

Processing XML

  • Loading XML dynamically via the web
  • Creating and saving XElement content
  • Parsing documents, elements and attributes
  • Walking an XML document using LINQ
Show complete outline
Show Less

Convenient Ways to Attend This Instructor-Led Course

Hassle-Free Enrollment: No advance payment required to reserve your seat.
Tuition due 30 days after you attend your course.

In the Classroom

Live, Online

Private Team Training

In the Classroom — OR — Live, Online

Tuition — Standard: $2650   Government: $2355

Sep 24 - 26 ( 4Day)
9:00 AM - 4:30 PM EDT
Herndon, VA / Online (AnyWare) Herndon, VA / Online (AnyWare) Reserve Your Seat

Nov 6 - 8 ( 4Day)
9:00 AM - 4:30 PM EST
New York / Online (AnyWare) New York / Online (AnyWare) Reserve Your Seat

Jan 8 - 10 ( 4Day)
9:00 AM - 4:30 PM EST
Herndon, VA / Online (AnyWare) Herndon, VA / Online (AnyWare) Reserve Your Seat

Feb 12 - 14 ( 4Day)
9:00 AM - 4:30 PM EST
Alexandria, VA / Online (AnyWare) Alexandria, VA / Online (AnyWare) Reserve Your Seat

Apr 29 - May 1 ( 4Day)
9:00 AM - 4:30 PM EDT
New York / Online (AnyWare) New York / Online (AnyWare) Reserve Your Seat

Guaranteed to Run

When you see the "Guaranteed to Run" icon next to a course event, you can rest assured that your course event — date, time, location — will run. Guaranteed.

Private Team Training

Enrolling at least 3 people in this course? Consider bringing this (or any course that can be custom designed) to your preferred location as a private team training.

For details, call 1-888-843-8733 or Click Here »

This event has been added to your cart.




In Classroom or





Private Team Training

Contact Us »

Course Tuition Includes:

After-Course Instructor Coaching
When you return to work, you are entitled to schedule a free coaching session with your instructor for help and guidance as you apply your new skills.

After-Course Computing Sandbox
You'll be given remote access to a preconfigured virtual machine for you to redo your hands-on exercises, develop/test new code, and experiment with the same software used in your course.

Free Course Exam
You can take your Learning Tree course exam on the last day of your course or online any time after class.


Training Hours

Standard Course Hours: 9:00 am – 4:30 pm
*Informal discussion with instructor about your projects or areas of special interest: 4:30 pm – 5:30 pm

Enhance Your Credentials with Professional Certification

Learning Tree's comprehensive training and exam preparation guarantees that you will gain the knowledge and confidence to achieve professional certification and advance your career.

Earn 23 Credits from NASBA

This course qualifies for 23 CPE credits from the National Association of State Boards of Accountancy CPE program. NOTE: Only live, in-class attendance qualifies for NASBA CPEs. Read more ...

“The instructor for C# Extended Features was exceptionally effective in his use of examples and presentation of the material … After taking this course, I feel prepared for the expansion of my programming duties at work and will be using .NET as the primary language for applications.”

- M. Accetta, Senior Programmer
The Bessemer Group

Chat Now

Please Choose a Language

Canada - English

Canada - Français