.NET Framework Using C#


.NET Framework Using C#, Visual Studio 2017- 4 Days

Course Description – .NET Framework Using C#, Visual Studio 2017

.NET Framework Using C# – Microsoft .NET is an advance in programming technology that greatly simplifies application development, both for traditional, proprietary applications and for the emerging paradigm of Web-based services. .NET is a complete restructuring of Microsoft’s whole system infrastructure and represents a major learning challenge for programmers developing applications on Microsoft platforms. Part of .NET is a major new object-oriented programming language, C#. But learning the new programming language is only part of the challenge. The much greater challenge is learning the .NET Framework and all its capabilities.

This four-day course is designed to provide a sound introduction to the .NET Framework for programmers who already know the C# language and the fundamentals of Windows Forms. It is current to Visual Studio 2017, which now includes support for cross-platform development using .NET Core. The course focuses on core portions of the .NET Framework that are common across many application areas. Separate courses are available in specific areas, such as ADO.NET, XML Programming, Windows Presentation Framework, Windows Communications Framework and ASP.NET.

The course starts with an introduction to the architecture and key concepts of .NET. It then discusses class libraries, assemblies, versioning, configuration, and deployment, which constitute a major advance in the simplicity and robustness of deploying Windows applications, ending the notorious “DLL hell.” The next four chapters discuss important topics in the .NET programming model, including metadata, reflection, I/O, and serialization. Chapter 6 continues the discussion of the .NET programming model, covering memory management, asynchronous programming and application domains. Next comes a chapter on threading, which includes an introduction to the Task Parallel Library (TPL).

.NET Security, which was simplified in .NET 4.0, is introduced, including both code access security and role-based security. The next chapter covers interoperability of .NET with COM and with Win32 applications. The course includes an introduction to database programming using ADO.NET and LINQ. Finally, the .NET Framework diagnostic facilities are discussed in depth. An appendix covers .NET Remoting.

The course is practical, with many examples and a case study. The goal is to equip you to begin building significant applications using the .NET Framework. The student will receive a comprehensive set of materials, including course notes and all the programming examples.

What You Will Learn

  • Gain a thorough understanding of the philosophy and architecture of .NET
  • Acquire a working knowledge of the .NET programming model and .NET Security
  • Implement multi-threading effectively in .NET applications
  • Learn how to implement database applications using ADO.NET and LINQ
  • Learn how to debug .NET applications using .NET diagnostic classes and tools


The student should be an experienced application developer or architect with a working knowledge of C#, including building simple GUIs with Windows Forms.


  1. .NET Fundamentals

What is Microsoft .NET?

Common Language Runtime

CLR Serialization

Attribute-Based Programming

Interface-Based Programming


Common Type System

Framework Class Library

Language Interoperability

Managed Code

Assemblies and Deployment

Web Services



.NET Native

.NET Core and Cross-platform Development

XML Serialization

  1. Class Libraries

Components in .NET

Building Class Libraries at the Command Line

Class Libraries Using Visual Studio

Using References

  1. Assemblies, Deployment and Configuration


Private Assembly Deployment

Shared Assembly Deployment

Configuration Overview

Configuration Files

Programmatic Access to Configuration

Using SDK Tools for Signing and Deployment

Application Settings

  1. Metadata and Reflection



Late Binding

  1. I/O and Serialization





  1. .NET Programming Model

Memory Management and Garbage Collection

Asynchronous Delegates


Application Domains

  1. .NET Threading

Threading Fundamentals


Foreground and Background Threads


Task Parallel Library

  1. .NET Security

Authentication and Authorization

Code Access Security



Role-Based Security

Principals and Identities

  1. Interoperating with COM and Win32

.NET Client Calling a COM Server

64-bit System Considerations


  1. ADO.NET and LINQ

ADO.NET Overview

.NET Data Providers


Using LocalDB


DataReaders and Connected Access

Data Sets and Disconnected Access

Language Integrated Query

  1. Debugging Fundamentals

Compile-time Errors and Run-time Errors

Configuring Debug, Release, and Special Builds

Visual Studio Debugger

Just-In-Time Debugging

Attaching Debugger to a Running Process

  1. Tracing


Event Logs

  1. More About Tracing

Using the BooleanSwitch and TraceSwitch Classes

Print Debugging Information with the Debug Class

Instrumenting Release Builds with the Trace Class

Using Listeners

Implementing Custom Listeners


Appendix A:  .NET Remoting

Marshal by Value

Marshal by Reference

.NET Remoting

System Requirements

Required software is Visual Studio 2017, which includes LocalDB, a lightweight version of SQL Server. The free Visual Studio Community 2017 may be used. The operating system should be Windows 7sp1 or more recent. See the appropriate course Setup Guide for details.

A good minimal hardware profile for this course would have a 2 GHz or better CPU, 2 GB of RAM (4 GB recommended), and at least 10 GB of free disk space for tools installation and courseware.

Other courses to explore:

Object-Oriented Programming in C# – Onsite, Custom, Lowest Price


XML for Web Applications Using C#

visual studio .NET C#
C# .NET Visual Studio
Print Friendly, PDF & Email