home > training > CS215: C# Programming with Visual Studio

64 Student Comments

CS215: C# Programming with Visual Studio

$2,995 Interface Gold™

  • 4 Days
  • Taught by Dan Wahlin
  • Compatible with Microsoft Official Curriculum: MOC 20483
  • Microsoft SA Voucher Eligible
Interested in scheduling a date for this course?
Request A Date
Register today - no risk!  No cancellation fees.  Full money back guarantee!
  • This field is for validation purposes and should be left unchanged.

Course Description

The course begins by providing a look at the different components of the .NET framework and discusses the basic building blocks of the C# language including variables, comments, conditionals and looping.  Next, classes and Object Oriented Programming (OOP) features found in C# are discussed so that students understand how to leverage concepts such as inheritance, abstraction, method overriding, overloading, generics, interfaces, and object hierarchies.  The course also shows several of the powerful language features available in C# including lambda expressions and Language Integrated Query (LINQ).  Other topics covered include data access technologies such as ADO.NET and Entity Framework.

By the end of the class students will understand all of the key components available in the C# language and learn how they can be used together to build applications. This class is created by Microsoft MVP Dan Wahlin.


Getting Started with the .NET Framework

What is the .NET Framework?

The role of the Common Language Runtime (CLR)

    • What is the CLR and what does it do in .NET?
    • .NET object-oriented language choices
    • Multi-language interoperability
    • Memory Management and Garbage Collection

.NET Compilation Model

    • Microsoft Intermediate Language (MSIL)
    • Just-in-Time compilation
    • Assemblies and Namespaces

The Base Class Library


Core Language Syntax

C# Fundamentals

    • Writing statements
    • Commenting Code
    • Value vs. Reference Types
    • C# Operators

Defining Variables, Constants, and Arrays in C#

    • Understanding variable scoping
    • Declaring variables
    • Declaring constants
    • Declaring arrays

Type Casting

Conditionals and Looping

    • if..else statements
    • switch statements
    • looping statements


Creating and Using Classes

  • What are classes?
  • What are objects?
  • Class members
  • Creating a class from scratch
  • Setting class member access visibility
  • Adding fields to a class
  • Adding properties
  • Adding methods
  • Adding constructors
  • The Role of Namespaces


Object-Oriented Programming

  • What is object-oriented programming?
  • Understanding Abstraction, Encapsulation, Polymorphism and Inheritance
  • Using abstract classes
  • Inheriting from base classes
  • Overriding members
  • Structured Exception handling
  • Creating a finally block


Working with Generics

  • What are Generics?
  • Creating objects using Generics
  • Defining a custom Generic type
  • Using the Nullable Struct
  • The default keyword
  • System.Collections.Generic Classes


Working with Interfaces

  • What are Interfaces?
  • Defining interfaces
  • Implementing interfaces
  • Interfaces and Polymorphism
  • Interfaces in the .NET Framework


Using the Base Class Library

  • Overview of functionality in the framework class library
  • Working with Dates and Times
  • Working with Strings
  • Getting Started with Threading


Using Language Integrated Query (LINQ)

  • What is Language Integrated Query (LINQ)
  • The role of anonymous types
  • LINQ Expressions
  • Lambda Expressions
  • Using LINQ to Objects


Data Access with ADO.NET and Entity Framework

  • Introduction to ADO.NET
  • Managed Provider Classes in ADO.NET
  • Introduction to Object-Relational-Modeling (ORM) Frameworks
  • Using Entity Framework and LINQ


This course is valuable for developers who are interested in building different types of applications using the C# programming language.


This course is designed for software developers with previous programming experience using a language such as Visual Basic, C++, Java, etc.

What You Will Learn

After attending this course, students will know:

  • C# language fundamentals and core concepts
  • The role of classes, objects, namespaces and assemblies
  • Object-oriented principles
  • C# generics
  • The role interfaces play in .NET
  • .NET Base Class Libraries
  • LINQ and Lambdas
  • Data access with ADO.NET
  • Data access with Entity Framework

Student Comments (64)

Comments about the Instructor
"Dan is exceptional. He was able to break down complex concepts into chunks that could be easily understood. I will not hesitate to take another class with him."
October 18, 2019 | CS215 Student
Comments about the Instructor
"Instructor kept the class engaging even for a remote participant and provided examples of how to use subject matter"
October 18, 2019 | CS215 Student
Comments about the Instructor
"An excellent instructor!"
October 18, 2019 | CS215 Student
Comments about the Instructor
"Fantastic examples that were easy to understand and not overly complicated."
October 18, 2019 | CS215 Student
Comments about the Instructor
"I have no programming experience and Dan taught the class in terms that I could understand."
October 18, 2019 | CS215 Student
Load More Comments