20483-C: Programming in C#


This training course teaches developers the programming skills that are required for developers to create Windows applications using the Visual C# language. During their five days in the classroom, students review the basics of Visual C# program structure, language syntax, and implementation details, then consolidate their knowledge throughout the week as they build an application that incorporates several features of the .NET Framework 4.7.

Addressed to

  • This course is intended for experienced developers who already have programming experience in C, C++, JavaScript, Objective-C, Microsoft Visual Basic, or Java and understand object-oriented programming concepts. This course is not designed for students who are new to programming; It is intended for professional developers with at least one month of programming experience in an object-oriented environment.


35 hours


    • Face-to-face

    • Virtual live through digital platforms

  • on site

Related Courses



It includes

    • 35 hours of training

    • Trained instructors

    • Participant manual in digital format

  • Proof of participation


Lesson 1: Visual C# Syntax Review

    • Write Application Overview Using Visual C#

    • Data types, operators and expressions

  • Constructs of the Visual C# programming language

Lab : Implementing Editing Functionality for the Student List

    • Implementing insert functionality for student list

    • Implementation of delete functionality for student list

  • Viewing the age of a student

Lesson 2: Method Creation, Exception Handling, and Monitoring Applications

    • Create and invoke methods

    • Creating overloaded methods and using optional and output parameters

    • exception handling

  • monitoring applications

Laboratory: Extending the functionality of the class registration application

    • Enrollment code refactoring

    • Validation of student information

  • Save changes to class list

Lesson 3: Visual C# Basic Types and Constructs

    • Implementation of structures and enums

    • Organization of data in collections

  • event handling

Laboratory: Writing the code for the application of the prototype of qualifications

    • Add Navigation Logic to the Grading Prototype App

    • Creating data types to store user and grade information

  • Viewing user information and rating

Lesson 4: Creating Classes and Implementing Type-Safe Collections

    • creating classes

    • Definition and implementation of interfaces

  • Implementation of type-safe collections

Lab : Adding Data Validation and Type Safety to Your Application

    • Implement teacher, student, and grade structures as classes

    • Add data validation to the rating class

    • Viewing students in name order

  • Allow teachers to modify class data and grades

Lesson 5: Creating a Class Hierarchy Using Inheritance

    • Create class hierarchies

  • Extending .NET Framework classes

Lab : Refactoring Common Functionality in the User Class

    • Refactoring common functionality in the user class

    • Implementing password complexity using an abstract method

  • Creating the custom exception ClassFullException

Lesson 6: Reading and writing local data

    • Read and write files

    • Serialize and deserialize data

  • Performing I/O Using Streams

Lab: Grade Report Generation

    • Serialize data for grade report as XML

    • Grade Report Preview

  • Keeping serialized grade data in a file

Lesson 7: Accessing a Database

    • Creating and using entity data models

  • Query data using LINQ

Lab: Grade Data Retrieval and Modification

    • Creation of an entity data model from the database of the School of Fine Arts

    • Updating student data and grades using the Entity Framework

  • Extending the entity data model to validate data

Lesson 8: Remote Data Access

    • Access data on the web

  • Access data using OData connected services

Lab: Retrieving and Modifying Grade Data Remotely

    • Creating a WCF data service for the SchoolGrades database

    • Integration of the data service in the application

  • Retrieval of student photographs via the web (time permitting)

Lesson 9: User Interface Design for a Graphical Application

    • Use XAML to design a user interface

  • Binding controls to data

Lab: Customizing Student Photos and App Design

    • Customizing the Appearance of Student Photos

    • Styling the login view

  • StudentPhoto control animation (time permitting)

Lesson 10: Improving Application Performance and Responsiveness

    • Multitasking Implementation

    • Performing operations asynchronously

  • Synchronize concurrent data access

Lab : Improving Responsiveness and Application Performance

    • Ensuring the UI remains responsive when retrieving teacher data

  • Provide visual feedback during long duration operations

Lesson 11: Integration with unmanaged code

    • Creating and using dynamic objects

  • Manage the lifetime of objects and control unmanaged resources

Lab : Grade Report Update

    • Generation of the report of qualifications by means of Word

  • Control the lifetime of Word objects by implementing the Dispose pattern

Lesson 12: Creating Reusable Types and Assemblies

    • Examine object metadata

    • Creating and using custom attributes

    • Generating managed code

  • Assembly versioning, signing, and deployment

Lab: Specifying the data to include in the report card

    • Create and apply the IncludeInReport attribute

    • Report Update

  • Store the Grades.Utilities assembly centrally (time permitting)

Lesson 13: Data Encryption and Decryption

    • Symmetric encryption implementation

  • Asymmetric encryption implementation

Lab: Grade Report Encryption and Decryption

    • Encrypt report card

  • Encrypt report card

Recent articles

Imagen principal de la noticia de tipos de Ingeniería Social

Types of Social Engineering

Phishing: It is characterized by searching for personal information, names, addresses and security numbers. It uses links that redirect to suspicious sites, with URLs that…

Social Engineering

Social engineering is a set of techniques used by cybercriminals to trick unsuspecting users into sending them sensitive data, infecting their computers with malware or…