Request Info

Salutation

First Name

Last Name

Job Title

Company

Post Code

Country
List

Office Telephone

Extension

E-mail

Information provided will be used to communicate with you about our products.
Privacy Statement

A representative will contact you to follow up your request.

Save up to 55% per course
 

Programming C# Extended Features:
Hands-On

Streamlining Entity Framework Applications


Course 9734 Days

 E-mail E-mail a Colleague Course Details Course Details Course Details PDF Course Details PDF

Frequently Asked Questions

What is this course about?

This course offers complete coverage of all C# extended features including LINQ and the Entity Framework (EF) for data manipulation. You gain experience maintaining an inherent object-oriented structure and learn how to map it to the relational paradigm. You also learn how to use specialised C# keywords such as yield and delegate, as well as related language features such as lambda expressions, extension methods, generic classes, generic delegates, universal functions and anonymous types.

Who will benefit from this course?

This course is valuable for experienced C# programmers who want to improve their software development capabilities by using the new and extended C# language features.

What are extended features?

C# extended features are capabilities to support development that go beyond the traditional object-oriented usage needed for typical Web or Windows Forms applications. In particular, Language Integrated Query (LINQ) allows C# to be used as a data-manipulation language, without having to write the labor-intensive and low-level code yourself.

Are there other extended features?

Yes. Although LINQ is the major enhancement, there are a number of other capabilities that allow C# to be used in atypical ways. Most of these were added in C# 3.0 and include lambda expressions, auto-implemented properties, object-initialisers, extension method and anonymous types. Additional features were added in C# 4.0 and include dynamic types, named arguments and covariance. All of the extended features are discussed in this course.

What is LINQ?

Language INtegrated Query (LINQ) is a C# language feature that provides a full capability for managing database access within C#. Specifically, it is a series of "query keywords" that extend the syntax and semantics of the C# language.

What is the Entity Framework (EF)?

The entity framework is a "LINQ provider" - an advanced layer that goes between the C# LINQ dialect and a relational database accessed by ADO.NET. It supports the infrastructure for object-relational translation and mapping including update, insert, delete and implicit support for identity maps.

Does the course discuss LINQ to SQL?

LINQ to SQL (not to be confused with the LINQ C# language feature) is also a LINQ provider. LINQ to SQL is for SQL Server databases only. LINQ to EF is for any database. This course discusses both providers, but focuses on LINQ to EF.

What background do I need?

This is an advanced C# course. Attendees should have practical hands-on experience with the C# language at the level of Course 419, C# Programming: Hands-On. For example, 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

I attended Course 502, Programming with .NET: A Comprehensive Hands-On Introduction. Can I attend this course?

Course 502 provides an introduction to programming and covers only some features of the C# language. Course 973 is an advanced C# class and requires a broader knowledge of and experience with C#, object-orientation and components. Course 419, C# Programming: Hands-On, or equivalent experience is the recommended prerequisite.

Do I need to know SQL to attend this course?

Knowledge and experience of SQL is helpful but is not required. The LINQ data-manipulation dialect is similar in some respects to SQL, but it is quite different both in syntax and semantics. In particular, it is a declarative approach to data (what data is needed) rather than a flow and streaming approach (how do I get the data). The usage of LINQ query keywords are explained fully in this course.

What versions of C#, .NET Framework and Visual Studio are used in this course?

C# 4.0, .NET Framework 4 and Visual Studio 2010 are used in this course.

I use an earlier version of C# and/or Visual Studio. Will this course be useful for me?

Most of the extended features discussed in this course are from C# 3.0/4.0 and cannot be used with older versions. However, this course is beneficial to any developer who is planning to upgrade to C# 3.0/4.0 and Visual Studio 2010 and wants to get an advanced look at these new C# capabilities.

What tools are used in this course?

In addition to C# 4.0, .NET 4 and Visual Studio 2010, this course also uses SQL Server 2008 Express with the SQL Server Management Studio.

How much time is spent on each topic?

ContentHours
Introduction1.5
Harnessing C# language features3.0
Employing extension methods for middle-tier data manipulation 2.0
Leveraging LINQ query keywords 4.0
Adapting LINQ and Entity Framework (EF)6.0
Enumerations and generic classes 2.5
Processing data with LINQ queries 2.0
Applying LINQ to XML2.0
Times, including the workshops, are estimates; exact times may vary according to the needs of each class.

How much of this course is hands-on?

About 40 percent of class time is spent performing hands-on exercises. Exercises include:

  • Writing lambda expressions and extension methods for middle-tier list manipulation
  • Implementing the data-tier with LINQ
  • Employing ObjectContext and DataContext objects and LINQ query keywords to access and update a database
  • Mapping entity classes using the O/R Designer and EF Mapper
  • Achieving dynamic enumerations with yield
  • Parsing XML documents using LINQ
  • Installing C#/LINQ stored procedures

How does this course relate to other courses?

This course is closely related to the following courses:

Additional courses you may be interested in include:

 

Course Dates

Live online classroom training. Attend highlighted events in person or live, online via Learning Tree AnyWareTM.

UK Dates

20-23 MarLondon enrol
24-27 JulLondon enrol
20-23 NovLondon enrol

US East Coast Dates

6-9 MarWashington, DC enrol*
17-20 AprNew York enrol*
15-18 MayWashington, DC enrol*

*New York and Washington DC Courses – Available online with a run time of 2pm to 9pm BST.

For AnyWare enrolments, please register at least 10 days prior to the start of the course.

More Dates and locations.

Fees

£ 1,925Standard Fee
Fee with a Savings Plan
£ 1,2252-Course Passport
£ 1,0853-Course Passport
£ 1,0004-Course Passport
£ 1,600Voucher 10-Pack

On-Site &
Custom Training

Bring this or any Learning Tree course to your location or have it customised for your organisation.

Certification Core Course