Skip to content

southernleo/bsStoreApp

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

32 Commits
 
 
 
 
 
 
 
 

Repository files navigation

.NET RESTful API Development

This repository showcases my journey in learning and developing a .NET RESTful API using ASP.NET Core. The project incorporates best practices, architectural principles, and various modern API development techniques.

🚀 What I Learned

API, HTTP, REST, RESTful: Understanding API fundamentals and how RESTful services work with HTTP protocols.

ASP.NET Core: Building scalable and efficient web APIs.

Logging: Implementing logging mechanisms to track API activities.

Working with Models: Structuring and managing data models.

Postman: Testing API endpoints and automating API requests.

Entity Framework Core: Performing database operations with ORM.

Software Architecture: Designing a clean and modular architecture for maintainability.

NLog Implementation: Integrating NLog for efficient logging.

Global Error Handling: Managing exceptions and providing meaningful error responses.

AutoMapper: Streamlining data transformations between models and DTOs.

Content Negotiation: Enabling APIs to support different response formats.

Validation: Ensuring data integrity with input validation mechanisms.

Asynchronous Code: Enhancing performance with async programming techniques.

Action Filters: Customizing request processing with filters.

Pagination: Implementing pagination for large datasets.

Filtering: Applying filters to retrieve specific data.

Searching: Enabling search functionality within API endpoints.

Sorting: Implementing sorting mechanisms for ordered data retrieval.

Data Shaping: Customizing API responses for flexibility.

HATEOAS: Implementing hypermedia-driven API interactions.

HEAD and OPTIONS Methods: Supporting additional HTTP methods for enhanced API usability.

Root Documentation: Structuring API documentation for better accessibility.

Versioning: Managing multiple API versions effectively.

Caching: Optimizing performance with caching strategies.

Rate Limit and Throttling: Controlling API access and request rates.

JWT, Identity, and Refresh Token: Implementing authentication and authorization mechanisms.

API Documentation: Documenting API endpoints using Swagger/OpenAPI.