To create a Web API in ASP.NET Core, you can follow these steps:

Step 1: Create a new ASP.NET Core project

  • Open Visual Studio or any other IDE of your choice.
  • Create a new project using the ASP.NET Core Web Application template.
  • Choose the API template and provide a name for your project.
  • Click “Create” to create the project.

Step 2: Define the API Controller

  • In the created project, find the “Controllers” folder.
  • Right-click on the folder and select “Add” -> “Controller.”
  • Choose the “API Controller with actions, using Entity Framework” template.
  • Specify the name for your controller and click “Add.”

Step 3: Define API endpoints

  • Open the created API controller file (e.g., ValuesController.cs).
  • The template should have generated some sample actions (methods).
  • Modify or add your desired actions to handle different HTTP requests.
  • For example, you can have a method decorated with [HttpGet] attribute to handle GET requests.
  • You can also have methods decorated with [HttpPost], [HttpPut], [HttpDelete], etc., for handling other HTTP verbs.
  • Inside each action, you can write the logic to process the requests and return the desired responses.

Step 4: Configure routing

  • Open the Startup.cs file in your project.
  • In the ConfigureServices method, add the following code to enable API controllers and their features:
  services.AddControllers();
  • In the Configure method, add the following code to configure the routing for your API:
  app.UseRouting();

  app.UseEndpoints(endpoints =>
  {
      endpoints.MapControllers();
  });

Step 5: Test your API

  • Build and run your project.
  • Your API should now be accessible via the defined endpoints.
  • You can use tools like Postman, curl, or any other HTTP client to send requests to your API and verify the responses.

That’s it! You have successfully created a Web API in ASP.NET Core. You can continue to add more endpoints and business logic to fulfill your API requirements. Remember to handle validation, authentication, and authorization as needed.