🤖 On-Demand + AI Assist

Intermediate Programming with .NET and C#

Course Code: CSHARP-200
Duration: 7 hours
Level: Intermediate
Category: Software Development
Course Price: $99.99

Course Overview

Advance your .NET development skills with this comprehensive intermediate-level course focusing on professional application development using Visual Studio 2022. Master essential .NET libraries, data access patterns, and advanced programming concepts including processes, threads, and asynchronous programming. This hands-on course bridges the gap between basic programming knowledge and professional-level .NET development.

Who Should Attend

This course is ideal for:

  • Software Developers with basic C# knowledge seeking to advance their skills
  • Junior .NET Developers looking to understand enterprise-level patterns
  • Programmers transitioning from other languages to .NET ecosystem
  • Computer Science Students preparing for professional development roles
  • IT Professionals building internal tools and applications
  • System Administrators automating tasks with .NET console applications
  • Data Analysts requiring custom data processing solutions
  • Anyone with fundamental programming experience ready to tackle intermediate concepts

Prerequisites

  • Basic C# Programming Knowledge: Variables, loops, conditionals, methods
  • Object-Oriented Programming Concepts: Classes, objects, inheritance
  • Visual Studio Familiarity: Basic IDE navigation and project creation
  • SQL Fundamentals: Basic SELECT, INSERT, UPDATE, DELETE operations
  • Database Concepts: Tables, relationships, primary keys
  • Windows Operating System: Comfortable with file system navigation

Course Duration & Format

  • Duration: 4 comprehensive lessons
  • Level: Intermediate (300-level)
  • Format: AI-instructor-led with hands-on exercises
  • Delivery: Interactive console application development
  • Environment: Visual Studio 2022 with .NET framework

Learning Objectives

Upon completion of this course, participants will be able to:

Build professional console applications using Visual Studio 2022
Implement data access patterns with both ADO.NET and Entity Framework Core
Create secure, parameterized database queries to prevent SQL injection
Design and implement CRUD operations for data management
Utilize advanced .NET libraries including System.Collections.Generic and System.Linq
Implement asynchronous programming with async/await patterns
Manage processes and threads for concurrent application development
Debug applications effectively using Visual Studio's integrated debugger
Apply professional coding practices for maintainable, scalable applications

Detailed Course Structure

Lesson 1: Introduction to Visual Studio 2022 and Common .NET Libraries

Foundation Building

  • Visual Studio 2022 Setup: Project creation and IDE navigation
  • Core .NET Namespaces: System, System.Collections.Generic, System.IO, System.Linq
  • Console Application Development: Interactive user input and output
  • Debugging Techniques: Breakpoints, variable inspection, call stack analysis
  • String Operations: Interpolation, formatting, and manipulation
  • Data Structures: Working with collections and dictionaries
  • File I/O Operations: Reading from and writing to files
  • LINQ Fundamentals: Basic querying and data manipulation

Hands-On Exercise: Build an interactive console application with user input, data processing, and file persistence

Lesson 2: Using Microsoft ADO.NET for Data Management

Professional Data Access

  • ADO.NET Architecture: Connected vs. disconnected models
  • Database Connectivity: Connection strings and SqlConnection management
  • Command Execution: SqlCommand for queries and data manipulation
  • Data Reading: SqlDataReader for efficient data retrieval
  • Parameterized Queries: Security best practices and SQL injection prevention
  • Scalar Operations: ExecuteScalar for aggregate functions
  • Disconnected Data: SqlDataAdapter and DataTable usage
  • Transaction Management: SqlTransaction for data integrity
  • Error Handling: Exception management in database operations

Hands-On Exercise: Create a complete inventory management system with full CRUD operations using ADO.NET

Lesson 3: Using Entity Framework Core for Data Management

Modern Data Access Patterns

  • EF Core Setup: NuGet packages and project configuration
  • Entity Models: Creating C# classes that map to database tables
  • DbContext Configuration: Database connection and entity mapping
  • LINQ to Entities: Querying databases with LINQ expressions
  • Change Tracking: Understanding EF Core's change detection
  • CRUD Operations: Add, Update, Delete with SaveChanges
  • Advanced Queries: Filtering, sorting, and aggregation
  • Performance Considerations: Query optimization and best practices
  • Migration Concepts: Database schema management overview

Hands-On Exercise: Rebuild the inventory system using Entity Framework Core, demonstrating the advantages of ORM over direct SQL

Lesson 4: Processes, Threads, and Async Programming in C#

Advanced Concurrency and Performance

  • Process Management: System.Diagnostics.Process for external program control
  • Thread Fundamentals: Creating and managing threads with System.Threading
  • Thread Synchronization: Thread.Join and coordination techniques
  • Asynchronous Programming: async/await pattern implementation
  • Task-Based Programming: Task.Run for CPU-bound operations
  • I/O Bound Operations: Task.Delay and non-blocking operations
  • Performance Optimization: Understanding when to use threads vs async
  • Best Practices: Avoiding deadlocks and race conditions
  • Responsive Applications: Maintaining UI responsiveness

Hands-On Exercise: Build a multi-threaded application that processes data asynchronously while maintaining responsiveness

Key Technical Skills Developed

Database Programming

  • ADO.NET Mastery: Direct SQL execution and data manipulation
  • Entity Framework Core: Modern ORM implementation
  • Query Optimization: Performance tuning and best practices
  • Security Implementation: Parameterized queries and input validation
  • Transaction Management: Data integrity and rollback scenarios

Advanced Programming Concepts

  • Asynchronous Programming: Non-blocking application design
  • Multithreading: Concurrent processing and resource management
  • Process Control: External program integration and monitoring
  • Error Handling: Robust exception management strategies
  • Memory Management: Efficient resource utilization

Professional Development Tools

  • Visual Studio 2022: Advanced IDE features and debugging
  • NuGet Package Management: Third-party library integration
  • Project Organization: Maintainable code structure
  • Testing Strategies: Unit testing and debugging techniques
  • Documentation: Code comments and professional practices

Real-World Applications

Business Applications

  • Inventory Management Systems: Complete CRUD operations with database persistence
  • Data Migration Tools: Moving data between systems using both ADO.NET and EF Core
  • Report Generation: Database querying and formatted output
  • Automated Processing: Background tasks and scheduled operations

System Administration

  • Process Monitoring: External application management and control
  • Data Analysis Tools: Custom reporting and analytics applications
  • Automated Tasks: Scheduled operations and maintenance scripts
  • Integration Solutions: Connecting disparate systems and databases

Development Environment

Required Software

  • Visual Studio 2022: Professional development environment
  • SQL Server: Database engine for hands-on exercises
  • AdventureWorks Database: Sample database for realistic scenarios
  • .NET Framework: Latest stable version for optimal performance

Lab Environment Features

  • Integrated Debugging: Step-through debugging with breakpoints
  • Database Integration: Real database connections and operations
  • Performance Monitoring: Application performance analysis
  • Code Analysis: Best practice enforcement and suggestions

Assessment and Validation

Practical Assessments

  • Hands-on Exercises: Real-world application development
  • Code Reviews: Professional coding standard compliance
  • Problem-Solving: Debugging and troubleshooting scenarios
  • Performance Analysis: Application optimization techniques

Knowledge Validation

  • Concept Mastery: Understanding of intermediate .NET concepts
  • Best Practices: Professional development standard implementation
  • Security Awareness: Secure coding practices and vulnerability prevention
  • Architecture Understanding: Appropriate pattern selection and implementation

Business Benefits

Organizations investing in this training will gain:

  • Increased Development Efficiency: Faster application development with proper tools
  • Improved Code Quality: Professional patterns and best practices
  • Enhanced Security: Proper data access and input validation
  • Better Performance: Optimized applications through async programming
  • Reduced Maintenance: Clean, maintainable code architecture
  • Cost Savings: Efficient development processes and reduced bugs

Career Advancement

This course prepares you for:

  • Senior Developer Roles: Advanced .NET programming capabilities
  • Application Architecture: Understanding of data access patterns
  • Database Development: Professional database programming skills
  • Performance Optimization: Concurrent and asynchronous programming
  • Enterprise Development: Scalable application design patterns

 

🤖 On-Demand + AI Assist Learning Experience

🧠

Intelligent Learning Support

AI agents provide 24/7 personalized and expert instruction, adapting to your learning pace and style.

🎯

Personalized Practice

Receive customized exercises and scenarios based on your progress and areas for improvement.

📊

Continuous Assessment

Real-time feedback and progress tracking help you stay on track and achieve your learning goals.

Hands-On Labs

This course includes practical, hands-on laboratory exercises to reinforce your learning:

Lesson 1: Introduction to Visual Studio 2022 and Common .NET Libraries

This lesson introduces students to Visual Studio 2022, essential .NET namespaces, and debugger tools through hands-on labs. Each lab is a standalone project to help students focus on core concepts and practice interactively.

~90 minutes

Lesson 2: Using Microsoft ADO for Data Management

In this lesson, students will explore how to use ADO.NET to interact with SQL Server databases directly from C# applications. ADO.NET is a core .NET technology that provides efficient and scalable access to relational data using objects like SqlConnection, SqlCommand, SqlDataReader, and DataSet.

~120 minutes

Lesson 3: Using Entity Framework for Data Management

In this lesson, students will learn how to use Entity Framework Core (EF Core) to interact with a SQL Server database using LINQ and object-oriented models. EF Core simplifies data access by abstracting SQL into a higher-level object model, enabling CRUD operations, query construction, and change tracking without manual SQL.

~120 minutes

Lesson 4: Processes, Threads, and Async Programming in C#

Understanding processes, threads and async programming 

~90 minutes

Ready to Get Started?

Join thousands of professionals who have advanced their careers with our training programs.

Join Scheduled Training

Find upcoming sessions for this course and register for instructor-led training with other professionals.

View Schedule

Custom Training Solution

Need training for your team? We'll create a customized program that fits your organization's specific needs.

Get Custom Quote