📌 Series Context: This is the seventh article in the 10‑part series covering the most important areas of .NET interview preparation. In Part 1, we introduced the .NET ecosystem. In Part 2, we covered C# fundamentals. In Part 3, we explored advanced C# features. In Part 4, we discussed ASP.NET MVC. In Part 5, we focused on ASP.NET Core. In Part 6, we covered Entity Framework & Data Access. Now, we'll explore Web API & Microservices.
Why Web API & Microservices?
Modern applications rely on APIs to expose functionality and integrate with other systems. ASP.NET Core Web API is widely used to build RESTful services. Microservices architecture takes this further by breaking applications into independent, loosely coupled services.
Interviewers often ask about REST principles, API versioning, authentication, and microservices design patterns.
REST Principles
Stateless
Resource-Based
HTTP Methods
Uniform Interface
Example: Patient Web API
Controller
[ApiController]
[Route("api/[controller]")]
public class PatientController : ControllerBase
{
private readonly IPatientService _service;
public PatientController(IPatientService service)
{
_service = service;
}
[HttpGet]
public IActionResult GetAll()
{
return Ok(_service.GetAll());
}
[HttpPost]
public IActionResult Create(Patient patient)
{
_service.Add(patient);
return CreatedAtAction(nameof(GetAll), patient);
}
}
👉 Interview Tip: Be ready to explain the difference between Controller and ControllerBase.
API Versioning
Versioning ensures backward compatibility.
services.AddApiVersioning(options =>
{
options.DefaultApiVersion = new ApiVersion(1, 0);
options.AssumeDefaultVersionWhenUnspecified = true;
options.ReportApiVersions = true;
});
👉 Common Versioning Strategies:
URL Versioning
Query String Versioning
Header Versioning
Authentication & Security
JWT (JSON Web Tokens)
OAuth2
API Keys
Example JWT Authentication Configuration
services.AddAuthentication(JwtBearerDefaults.AuthenticationScheme)
.AddJwtBearer(options =>
{
options.TokenValidationParameters =
new TokenValidationParameters
{
ValidateIssuer = true,
ValidateAudience = true,
ValidateLifetime = true,
ValidateIssuerSigningKey = true
};
});
Microservices Architecture
Microservices break applications into independent services that communicate through APIs or messaging systems.
Key Principles
Loose Coupling
Independent Deployment
Scalability
Resilience
Common Tools
Docker
Kubernetes
Azure Service Bus
RabbitMQ
Common Interview Questions (Part 7)
What are the REST principles?
How do you implement API versioning in ASP.NET Core?
Explain JWT authentication.
What is the difference between monolithic and microservices architecture?
How do microservices communicate with each other?
What are the challenges of microservices deployment?
Conclusion
In this seventh part, we covered:
REST principles and HTTP methods.
Example Web API controller for patient management.
API versioning strategies.
Authentication and security with JWT and OAuth2.
Microservices architecture principles and tools.
This foundation prepares you for Part 8, where we'll explore Azure & Cloud Integration—covering hosting, serverless functions, and cloud databases.
Summary
ASP.NET Core Web APIs enable applications to expose functionality through RESTful services, while microservices architecture helps organizations build scalable and independently deployable systems. Understanding REST principles, API versioning, JWT authentication, OAuth2, and microservices design patterns is essential for modern .NET development and frequently appears in technical interviews.