Sina Fateh

ENGINEERING NOTE / 01

ASP.NET Core development

I use C# and ASP.NET Core to build web applications with clear responsibilities between controllers, services, models, and persistence. TaskFlow is a concrete example in my portfolio.

In this note 05 questions
01

What is ASP.NET Core MVC?

MVC separates request handling, application data, and presentation. In TaskFlow, controllers receive requests, ViewModels shape form data, and a service layer keeps task and project rules outside the controllers.

02

Why use dependency injection?

Dependency injection lets a controller depend on a service contract rather than construct its own dependencies. That makes responsibilities easier to inspect and application logic easier to test.

03

How does Entity Framework Core fit?

Entity Framework Core handles the persistence model. TaskFlow uses SQLite and a one-to-many relationship between projects and tasks, including cascade deletion when a project is removed.

04

Where should validation happen?

Request and form validation should reject invalid input at the boundary. Business rules belong in the application layer, where they can be reused by more than one endpoint or interface.

05

What makes an API maintainable?

Consistent routes, explicit contracts, focused services, predictable errors, and tests for important behavior help an API remain understandable as requirements change.

IN PRACTICE

Related projects

CONTINUE READING

More notes

← Back to portfolio