Menu Icon

Courses & certifications

Home > Microsoft Training > Visual Studio & .NET Training > Programming in C# (M20483)

Programming in C# (M20483)

In this course, you will gain the programming skills needed to create Windows applications using the C# language. You will review the basics of C# program structure, language syntax, and implementation details. Using the knowledge and skills from training, you will build an application that incorporates several features of the .NET Framework 4.5. This course uses Visual Studio 2012 running on Windows 8.

  • Skills Gained
  • Who Can Benefit
  • Prerequisites
  • Syllabus

Skills Gained
Core syntax and features of C#
Create and call methods, catch and handle exceptions, and the monitoring requirements of large-scale applications
Implement the basic structure and essential elements of a typical desktop application
Create classes, define and implement interfaces, and create and use generic collections
Use inheritance to create a class hierarchy, extend a .NET Framework class, and create generic classes and methods
Read and write data by using file input/output and streams and serialize/deserialize data in different formats
Create and use an entity data model for accessing a database and use LINQ to query and update data
Use the types in the System.Net namespace and WCF Data Services to access and query remote data
Build a graphical user interface by using XAML
Improve the throughput and response time of applications by using tasks and asynchronous operations
Integrate unmanaged libraries and dynamic components into a C# application
Metadata of types using reflection, create and use custom attributes, generate code at runtime, and manage assembly versions
Encrypt and decrypt data by using symmetric and asymmetric encryption

Who Can Benefit
Experienced developers who have programming experience in C, C++, JavaScript, Objective-C, Microsoft Visual Basic, or Java and understand the concepts of object-oriented programming
Professional developers with at least one month of experience programming in an object-oriented environment

Understanding of how to name, declare, initialize, and assign values to variables within an application
Experience using:
Arithmetic operators to perform arithmetic calculations involving one or more variables
Relational operators to test the relationship between two variables or expressions
Logical operators to combine expressions that contain relational operators
Experience creating:
Code syntax for simple programming statements using C# language keywords and recognize syntax errors using the Visual Studio IDE
Simple branching structure using an IF statement
Simple looping structure using a For statement to iterate through a data array
Function that accepts arguments (parameters and returns a value of a specified type
Understanding of how to:
Use the Visual Studio IDE to locate simple logic errors
Design and build a simple user interface using standard controls from the Visual Studio toolbox
Connect to a SQL Server database and the basics of how to retrieve and store data
Sort data in a loop
Recognize the classes and methods used in a program

1. C# Syntax

  • Writing Applications Using C#
  • Datatypes, Operators, and Expressions
  • C# Programming Language Constructs

2. Creating Methods, Handling Exceptions, and Monitoring Applications

  • Creating and Invoking Methods
  • Creating Overloaded Methods and Using Optional and Output Parameters
  • Handling Exceptions
  • Monitoring Applications

3. Developing the Code for a Graphical Application

  • Implementing Structs and Enums
  • Organizing Data into Collections
  • Handling Events

4. Creating Classes and Implementing Type-Safe Collections

  • Creating Classes
  • Defining and Implementing Interfaces
  • Implementing Type-Safe Collections

5. Creating a Class Hierarchy Using Inheritance

  • Creating Class Hierarchies
  • Extending .NET Framework Classes
  • Creating Generic Types

6. Reading and Writing Local Data

  • Reading and Writing Files
  • Serializing and Deserializing Data
  • Performing I/O Using Streams

7. Accessing a Database

  • Creating and Using Entity Data Models
  • Querying Data Using LINQ
  • Updating Data Using LINQ

8. Accessing Remote Data

  • Accessing Data Across the Web
  • Accessing Data in the Cloud

9. Designing the User Interface for a Graphical Application

  • Using XAML to Design a User Interface
  • Binding Controls to Data
  • Styling a User Interface

10. Improving Application Performance and Responsiveness

  • Implementing Multitasking Using Tasks and Lambda Expressions
  • Performing Operations Asynchronously
  • Synchronizing Concurrent Access to Data

11. Integrating with Unmanaged Code

  • Creating and Using Dynamic Objects
  • Managing the Lifetime of Objects and Controlling Unmanaged Resources

12. Creating Reusable Types and Assemblies

  • Examining Object Metadata
  • Creating and Using Custom Attributes
  • Generating Managed Code
  • Versioning, Signing, and Deploying Assemblies

13. Encrypting and Decrypting Data

  • Implementing Symmetric Encryption
  • Implementing Asymmetric Encryption

Lab 1: Develop the Class Enrolment Application

  • Implement Edit Functionality for the Students List
  • Implement Insert Functionality for the Students List
  • Implement Delete Functionality for the Students List
  • Display the Student Age

Lab 2: Extend the Class Enrolment Application Functionality

  • Refactor the Enrolment Code
  • Validate Student Information
  • Save Changes to the Class List

Lab 3: Write the Code for the Grades Prototype Application

  • Add Navigation Logic to the Application
  • Create Data Types to Store User and Grade Information
  • Display User and Grade Information

Lab 4: Add Data Validation and Type-safety to the Grades Application

  • Implement the Teacher, Student, and Grade Types as Classes
  • Add Data Validation to the Grade Class
  • Display Students in Name Order
  • Enable Teachers to Modify Class and Grade Data

Lab 5: Refactor Common Functionality into the User Class

  • Create and Inherit from the User Base Class
  • Implement Password Complexity Using an Abstract Method
  • Create the ClassFullException Class

Lab 6: Generate the Grades Report

  • Serialize the Data for the Grades Report as XML
  • Preview the Grades Report
  • Persist the Serialized Grades Data to a File

Lab 7: Retrieve and Modify Grade Data

  • Create an Entity Model from the School of Fine Arts Database
  • Update Student and Grade Data Using the Entity Framework
  • Extend the Entity Model to Validate Data

Lab 8: Retrieve and Modify Grade Data in the Cloud

  • Create a WCF Data Service for the SchoolGrades Database
  • Integrate the WCF Data Service into the Application
  • Retrieve Student Photographs Over the Web

Lab 9: Customize Student Photographs and Styling the Application

  • Customize the Appearance of Student Photographs
  • Style the Logon View and the StudentPhoto Control

Lab 10: Improve Application Performance and Responsiveness

  • Implement Multitasking Using Tasks and Lambda Expressions
  • Perform Operations Asynchronously
  • Synchronize Concurrent Access to Data

Lab 11: Upgrade the Grades Report

  • Generate the Grades Report Using Microsoft Office Word
  • Control the Lifetime of Word Objects by Implementing the Dispose Pattern

Lab 12: Specify the Data to Include in the Grades Report

  • Create the IncludeInReport Attribute
  • Generate the Report
  • Store the Grades.Utilities Assembly Centrally

Lab 13: Encrypt and Decrypting Grades Reports

  • Encrypt the Grades Report
  • Decrypt the Grades Report
  • Course Code: M20483
  • Duration : 5 days
  • Certified by: Microsoft

RPS Travel & Stay

Worried about travel and Stay to our centers?

We can take care of that Find out more
Enquiry Image

India: +91 9148592716

International: +91 9883305050

Frequently Asked Questions


Students Certified


Keep me Updated

Get tips, latest Courses and Offers