Intermediate C#: Collections, LINQ and Database Interactions
Go beyond syntax and learn how to build secure, data-driven applications in C#, with real database access, encryption, and a portfolio-ready final project.
Join Skill Foundry
This course includes:
Prerequisites:
Overview
Curriculum
Mentor
FAQs
What we'll cover...
Why Learn Collections, LINQ, and Database Interaction?
Curriculum Outline
Module 1: Introduction
- Get started with the course and download the code samples, exercises, and solutions.
- Welcome!
- Getting the Course Materials from Github
Module 2: Introduction to Collections
- Learn about common C# collection types, generics, and iteration techniques for efficient data management.
- foreach Loops
- Legacy Collections
- Generics in C#
- Generic Collections
- Demo: Dice Statistics
- Exercise: Grocery List Manager
- Solution: Grocery List Manager
- Exercise: Restaurant Guest Queue
- Solution: Restaurant Guest Queue
- Nullable Types
- Exercise: Refactoring Airport Locker Rental
- Solution: Refactoring Airport Locker Rental
- Quiz: C# Collections
Module 3: Introduction to LINQ
- Learn Language Integrated Query (LINQ) for powerful data querying and manipulation.
- Extension Methods
- Exercise: ToTitleCase()
- Solution: ToTitleCase()
- LINQ Method Syntax
- LINQ Query Syntax
- Exercise: LINQ Practice Minis
- Quiz: LINQ
Module 4: Working with Files
- Explore file system operations, data serialization, and exception handling for robust file management.
- File and Directory Types
- Demo: Reading and Writing CSV and JSON Files
- Handling Exceptions
- Exercise: Airport Locker Rental File Storage
- Solution: Airport Locker Rental File Storage
- Exercise: Hangman
- Solution: Hangman
- Quiz: Working with Files
Module 5: Data Protection
- Implement security best practices including configuration management, encryption, and data protection.
- Configuration, Secrets, and Environment Variables
- Secrets, Hashing, and Encryption
- Demo: Hashing Passwords with Argon2
- Demo: Encrypting Data with AES
- Understanding Streams
- Exercise: Secured Airport Locker Rental
- Solution: Secured Airport Locker Rental
Module 6: Setting up Database Access
- Prepare your development environment and understand database security fundamentals.
- Setup: Docker Desktop and Database Container
- How Database Security Works
- Which Data Access Framework to Use?
Module 7: ADO.NET
- Work with databases using ADO.NET for direct database access and control.
- Querying Data with ADO.NET
- DML Queries, Stored Procedures, and Transactions with ADO.NET
Module 8: Dapper .NET
- Use the lightweight Dapper micro-ORM for efficient database operations.
- Querying Data with Dapper
- DML Queries, Stored Procedures, and Transactions with Dapper .NET
Module 9: Entity Framework Basics
- Entity Framework Core is the most popular package for object-relational mapping and database operations in C#.
- Querying Data with Entity Framework
- DML Queries, Stored Procedures, and Transactions with Entity Framework
- Scaffolding EF Core from a Database
Module 10: SQLite
- Work with SQLite databases and implement code-first development with Entity Framework.
- Introducing SQLite
- Installing SQLite and Tools
- Code-First in EF Core
- Exercise: SQLite Airport Locker Rental
- Solution: SQLite Airport Locker Rental
Module 11: N-Tier Architecture
- Design reusable layers using multi-tier architectural patterns.
- N-Tier Architecture
- Demo: 3 Tier Architecture
- Exercise: Finish Library Manager
- Solution: Library Manager
Module 12: Capstone Project
- Apply all course concepts in a comprehensive point-of-sale application project.
- Cafe Point of Sale
- Cafe Point of Sale Solution
- Next Steps
How We Build Developers
Write your awesome label here.
Written Lessons That Actually Make Sense
Our written content explains complex concepts in plain English, with real examples you can quickly apply. You'll understand not just what to do, but why pros make the decisions we do.
Write your awesome label here.
Hands-On Practice That Builds Confidence
Every concept comes with code samples and exercises. You can't learn to play guitar without putting your fingers on the strings and you can't learn to code without writing a lot of code!
Write your awesome label here.
Videos That Show, Don't Just Tell
You'll see how professional developers think, debug, and refactor code. These aren't just lectures, but applied theory. See concepts actually used together!
Write your awesome label here.
Rigorous Capstone Projects That Prove Your Skills
You'll build substantial applications that demonstrate your ability to architect solutions, handle complexity, and deliver professional-quality code.
Join developers who chose...
depth over speed,
understanding over memorization, and
professional skills over participation certificates.
Frequently asked questions
Who is this course for?
This course is for C# learners who already know basic object-oriented principles and want to take their skills further. If you've covered variables, conditionals, methods, classes, and interfaces, now you're ready for this next step.
You need to have completed the following courses or the equivalent:
You need to have completed the following courses or the equivalent:
What will I be able to build after this course?
You’ll build data-driven applications that use files and relational databases to persist data. Not only that, but you'll be able to make appropriate design decisions about how to structure applications in professionally extensible and maintainable ways.
This course sets the foundation for the "back-end" of full stack development. You'll create application layers that are easily used by web, mobile, and desktop front end layers.
This course sets the foundation for the "back-end" of full stack development. You'll create application layers that are easily used by web, mobile, and desktop front end layers.
Does this course include database training?
Check out our SQL for Beginners course to understand SQL and relational databases. This course shows you how to use C# collections, LINQ queries, and data frameworks like ADO.NET, Dapper, and Entity Framework Core to connect your applications to real SQL databases.
You’ll learn about configuration, queries, transactions, and schema design using multiple approaches, as well as the wisdom of how to pick the right approach for the situation.
You’ll learn about configuration, queries, transactions, and schema design using multiple approaches, as well as the wisdom of how to pick the right approach for the situation.
Do I need to know SQL to take this course?
You will need a basic familiarity with SQL. If you’ve never touched SQL before, check out our SQL for Beginners course alongside this one.
What about security? Will I learn best practices?
Absolutely. You'll learn how to handle secrets, hash passwords, encrypt data, and safely manage configurations. Don't be that person that gets made fun of on social media for pushing their credentials and API keys into source control!
Is this included in the Skill Foundry membership?
Yes! This course is fully included in your membership along with access to the C# beginner track, ASP.NET Core, Docker, Python, career preparation, and more.
How is this different from other C# courses?
We don’t stop at language features, we teach you how to apply them. You’ll work with files, databases, and encryption in the same way professional developers do. It’s not just about writing code, it’s about building real software!
About the Author
Eric Wise
Software Architect | Mentor | Entrepreneur
Eric isn't just another online instructor, he's a veteran software architect, multi-time tech entrepreneur, and someone who's been in every corner of the industry from tech start ups, big corporations, and freelancing.