C# & .NET Online Test
20 questions total, 50 minutes maximum, for mid-level programmers
The C# coding test allows you to easily assess the programming skills of candidates before ever inviting them to an interview.
This 20-question C# online test was compiled by a team of professional .NET developers and covers a broad spectrum of C# language knowledge. You can rely on the results of this exam to give you an accurate picture of which candidates might be worth hiring and which ones to pass on.
We hope you'll take advantage of the C# quiz to improve your interview process!
Programming test includes:
C# 6.0 & .NET 4.6 - 20 Questions
- C# Syntax, C# Statements: "try-catch", "using"
- Object-Oriented Programming (OOP)
- Entity Framework, LINQ to SQL
- Value Types vs. Reference Types
- Miscellaneous: Generics, Delegates, Extensions
- Miscellaneous: Structs, Singleton Pattern, Direct Cast vs "As" Operator
Sample C#/.NET Test Question
Consider the following C# code, which retrieves customers' information and their total purchase amounts from an MS SQL Database using the Entity Framework:
How many SQL queries will be executed against the database?
- One query
- Two queries
- Three queries
The correct answer is one query.
GetSales methods are
IQueryable. This means they return query expressions, not actual collections.
As a result, we execute a single complex query against the database (when
.ToList() is called) instead of retrieving two collections separately and joining them server-side.
Why this question is important
This C# test question proves a developer's understanding of the difference between the
It's important for C# developers to understand how the Entity Framework and LINQ to SQL interact with an SQL database.
Wrong built LINQ-To-SQL queries and misunderstanding of the differences between IQueryable and IEnumerable can cause serious performance issues, such as:
- Retrieving too much data from the SQL database; e.g. retrieving all rows from a table when only 20 entries are actually displayed at a time.
- Executing too many queries against the database; e.g. retrieving a list of customers, then executing individual queries to retrieve each customer's purchases.
- Executing overly complex queries against the database. If a query is too complex, you can actually get time-out exception. Sometimes it's preferable to split a complex query into two or more sub-queries and handle them further server-side.
1. Does every candidate have to answer the same questions?
Yes, C# & .NET test consists of the same questions for every candidate.
In order to properly compare candidates, they need to answer questions of the same difficulty, and different questions always mean different difficulty.
2. How should I interpret the exam scores?
First of all, you need to keep in mind one very important thing:
The purpose of this C# & .NET online test is not to help you find the best developers.
Its purpose is to help you avoid the worst ones.
For example, you have 5 candidates who get scores of 35, 45, 60, 65, and 80, based on a maximum possible score of 100.
3. Coding Test vs. Quiz
The test is presented in a multiple-choice, or quiz, format, rather than requiring test takers to write code.
4. What skill level is the test for?
5. What's about junior and senior level developers?
It can also be used to test junior programmers, but you should reduce your acceptance score drastically to compensate.
Likewise, you can use it to test senior .NET developers as well, with an increased acceptance score.
Some will argue that it's pointless to judge senior developers based on a test meant for mid-level developers. This is generally true if you're looking for specific skills in a candidate rather than a broad base of expertise.
But at the same time, anyone can claim to be a senior developer on their resume. If you're concerned that candidates might be overstating their knowledge and accomplishments, this C# & .NET skills test is a good way to determine which ones can actually deliver what they promise.
Other .NET Tests
- C# & .NET
- C# & .NET & MS SQL
- ASP.NET MVC
- ASP.NET MVC & C#
- ASP.NET MVC & C# & MS SQL
- ASP.NET MVC & C# & JS
- ASP.NET MVC & C# & MS SQL & JS
- WPF / Silverlight