Home > Training > CS314: Advanced C# Programming with Visual Studio
PDF Version

CS314: Advanced C# Programming with Visual Studio

Interface Gold Interface Gold

This Advanced C# Programming Course with Dan Wahlin can only be found at Interface. The course provides students with the knowledge and skills needed to develop applications using .NET Framework technologies with C# and Visual Studio. Students start with an accelerated language review, followed by core features of the Foundation Class Libraries (FCL), CLR memory management, events and delegates, async tasks, and dependency injection techniques. The class then covers development topics such as working with different System.IO classes, parsing XML data, and creating Windows Services. Finally, the course covers serializing data, exchanging data using WCF services, security classes, and transaction management.

  • $3,195
  • 5 Days, Labs, Live Q&A
  • Taught by Microsoft MVP Dan Wahlin
  • Exclusive Class - Only at Interface!
  • Advanced C# Programming Course
  • Replay™ Class Recordings Included
Interested in scheduling a date for this course? Request A Date

Microsoft Cloud Solutions
Course Outline

1. Accelerated C# Concepts

  • Object Oriented Programming
  • Abstraction
  • Polymorphism
  • Inheritance
  • Encapsulation
  • Type Conversions
  • Operator Overloading
  • Using Attributes


2. Best Practices

  • Exception Management
  • String Manipulation
  • Thread Synchronization
  • Generics and Constraints


3. CLR Memory Management

  • The Common Type System
  • Understanding CLR Generations
  • The role of IDisposable
  • Using the CLR Profiler


4. Foundation Class Library Features

  • System.IO Classes
  • System.Net Classes
  • System.Threading.Tasks
  • System.Reflection Classes


5. Conditional Compilation

  • Defining Debug Symbols
  • Conditional Compilation using the Conditional Attribute


6. Events and Delegates

  • What are Events, Delegates and Event Handlers?
  • Working with Delegates and Events
  • Creating Custom EventArgs Classes
  • Using Lambda Expressions
  • Using Func<T,TResult>
  • The async and wait keywords


7. Using Dependency Injection

  • What is Dependency Injection (DI)?
  • What is an IoC container?
  • The Role of Interfaces
  • Dependency Injection Techniques
  • Using an Ioc Container for DI


8. Monitoring, Debugging and Tracing

  • Using the Debugger Class
  • Tracing Operations
  • Performance Counters


9. Working with XML Data

  • Using System.Xml Classes
  • Using XML APIs
  • Monitoring XML files using Windows Services and the FileSystemWatcher


10. Serializing Data

  • Binary serialization
  • XML Serialization


11. .NET Security and Cryptography

  • Symmetric and Asymmetric Encryption Techniques
  • WindowsPrincipal and GenericPrincipal


12. Exposing Data with WCF

  • Web Services Architecture
  • Creating and Consuming a WCF Service
  • Modifying WCF Bindings
  • Debugging Services


13. Working with Transactions

  • Getting Started with Transactions
  • ADO.NET Transactions
  • Using TransactionScope
 
Audience

This course is valuable for developers who are interested in enhancing their existing C# programming skills.

 
Prerequisites

It is highly recommended that students take the C# Programming course before taking this course or have at least 6 months of hands-on programming experience with C# and feel comfortable working with C# syntax.

Before taking this course, students should successfully complete the following course or have equivalent experience:

CS214: C# Programming with Visual Studio

 
Student Comments (33)
Comments about the Instructor
"Absolutely loved the class, instructor was very knowledgeable and able to answer all of my obscure questions satisfactorily. I really liked how the lab content didn't just hold your hand through the lesson, and instead gave you broad instructions on what you needed to be doing. This allowed me to use my newly learned skilled better than if it had been just handed to me"
Comments about the Instructor
"Very engaging. I loved how Dan used his real world experiences as samples. The pace was just about perfect!"
Comments about the Instructor
"Great instructor! Very knowledgeable. Always a pleasure taking courses from Dan."
Comments about the Instructor
"Exceptional knowledgeable instructor. Will come back for his classes in the future."
Comments about enhancing the Courseware
"I really like the real world examples, so the more the better."
More Comments
"Absolutely loved the class, instructor was very knowledgeable and able to answer all of my obscure questions satisfactorily. I really liked how the lab content didn't just hold your hand through the lesson, and instead gave you broad instructions on what you needed to be doing. This allowed me to use my newly learned skilled better than if it had been just handed to me"
August 16, 2019 | CS314 Student
x
Course:
  • This field is for validation purposes and should be left unchanged.