Microsoft 10266 – Programming in C# with Microsoft Visual Studio 2010

In this course you will learn about the C# program structure, syntax language and implementation details with .NET Framework 4.0. Topcis covered in this course include how to use C# programming constructs, how to read and write files, how to encapsulate data and how to use LINQ to query data.

Who needs to attend

Who needs to attend?
This course is aimed at experienced developers with some programming experience in C, C++, Visual Basic or Java and understand the concept of object-oriented programming.

what you will learn

What you will learn

Upon completion you will know how to:

  • Developing C# applications for the Microsoft .NET Framework 4.0
  • Structure of C# 4.0 programs, language syntax, and implementation details
  • Using C# programming constructs
  • Declaring and calling methods
  • Handling exceptions
  • Reading and writing files
  • Creating new types
  • Encapsulating data
  • Inheriting from classes and implementing interfaces
  • Managing the lifetime of objects and controlling resources
  • Defining overload operators
  • Decoupling methods
  • Using collections and building generic types
  • Using LINQ to query data
  • Integrating Visual C# Code with Dynamic Languages and COM Components


Students need to have:

  • At least 12 months’ experience working with an object-oriented language
  • C++ or Java knowledge, including:
    • Creating classes
    • Inheritance and abstraction
    • Polymorphism
    • Interfaces
    • Exceptions
  • Knowledge of the Visual Studio IDE
Course outline

Course Outline

Module 1: Introducing C# and the .NET Framework

  • This module explains the .NET Framework, and using C# and Visual Studio 2010 for building .NET Framework applications.


  • Introduction to the .NET Framework
  • Creating Projects Within Visual Studio 2010
  • Writing a C# Application
  • Building a Graphical Application
  • Documenting an Application
  • Running and Debugging Applications by Using Visual Studio 2010

Module 2: Using C# Programming Constructs

  • This module explains the syntax of basic C# programming constructs.


  • Declaring Variables and Assigning Values
  • Using Expressions and Operators
  • Creating and Using Arrays
  • Using Decision Statements
  • Using Iteration Statements

Module 3: Declaring and Calling Methods

  • This module explains how to create and call methods.


  • Defining and Invoking Methods
  • Specifying Optional Parameters and Output Parameters

Module 4: Handling Exceptions

  • This module explains how to catch exceptions and handle them. Students will also learn how to throw exceptions.


  • Handling Exceptions
  • Raising Exceptions

Module 5: Reading and Writing Files

  • This module explains how to perform basic file I/O operations in a C# application.


  • Accessing the File System
  • Reading and Writing Files by Using Streams

Module 6: Creating New Types

  • This module explains how to create and use new types (enumerations, classes, and structures)


  • Creating and Using Enumerations
  • Creating and Using Classes
  • Creating and Using Structs
  • Comparing References to Values

Module 7: Encapsulating Data and Methods

  • This module explains how to control the visibility and lifetime of members in a type.


  • Controlling Visibility of Type Members
  • Sharing Methods and Data

Module 8: Inheriting From Classes and Implementing Interfaces

  • This module explains how to use inheritance to create new reference types


  • Using Inheritance to Define New Reference Types
  • Defining and Implementing Interfaces
  • Defining Abstract Classes

Module 9: Managing the Lifetime of Objects and Controlling Resources

  • This module explains how to manage the lifetime of objects and control the use of resources.


  • Introduction to Garbage Collection
  • Managing Resources

Module 10: Encapsulating Data and Defining Overloaded Operators

  • This module explains how to create properties and indexers to encapsulate data, and how to define operators for this data.


  • Creating and Using Properties
  • Creating and Using Indexers
  • Overloading Operators

Module 11: Decoupling Methods and Handling Events

  • This module explains how to decouple an operation from the method that implements an operation, and how to use these decoupled methods to handle asynchronous events.


  • Declaring and Using Delegates
  • Using Lambda Expressions
  • Handling Events

Module 12: Using Collections and Building Generic Types

  • This module introduces collections, and describes how to use Generics to implement type-safe collection classes, structures, interfaces, and methods.


  • Using Collections
  • Creating and Using Generic Types
  • Defining Generic Interfaces and Understanding Variance=
  • Using Generic Methods and Delegates

Module 13: Building and Enumerating Custom Collection Classes

  • This module explains how to implement custom collection classes that support enumeration.


  • Implementing a Custom Collection Class
  • Adding an Enumerator to a Custom Collection Class

Module 14: Using LINQ to Query Data

  • This module explains how to query in-memory data by using LINQ.


  • Using the LINQ Extension Methods and Query Operators
  • Building Dynamic LINQ Queries and Expressions

Module 15: Integrating Visual C# Code with Dynamic Languages and COM Components

  • This module explains how to integrate code written by using a dynamic language such as Ruby and Python, and technologies such as COM, into a C# application


  • Integrating C# Code with Ruby and Python
  • Accessing COM Components from C#

Follow on
There are no follow-ons for this course.

Certification programs
There are no certifications associated with this course.