2. 첫 번째 엔드포인트

2-2. PlantAPIController 생성

1.불필요한 파일 제거:

프로젝트를 새로 시작하기 위해, 기본으로 제공된 WeatherForecast 클래스 파일과 관련 컨트롤러를 삭제합니다.

2.필수 파일 유지:

  • Controllers 폴더: API 엔드포인트를 처리할 컨트롤러를 포함합니다.
  • appsettings.json: 애플리케이션 설정을 저장합니다.
  • Program.cs: 애플리케이션의 진입점을 정의하고, 애플리케이션을 구성합니다.

3. 첫 번째 API 컨트롤러인 PlantAPIController 클래스를 생성

  1. 컨트롤러 폴더 확인: 프로젝트 내에 컨트롤러 폴더가 보이지 않을 경우, ‘모든 파일 표시’ 옵션을 사용하여 폴더를 확인할 수 있습니다. 폴더가 비어 있기 때문에 기본적으로는 보이지 않습니다.
  2. API 컨트롤러 추가:
    • 컨트롤러 폴더에 우클릭하여 ‘클래스 추가’를 선택합니다. MVC 컨트롤러가 아닌, 기본 API 컨트롤러를 원합니다.
    • 클래스 파일을 추가하고, 이를 API 컨트롤러로 만들기 위해 클래스 이름에 ‘Controller’를 포함시킵니다. 예: PlantAPIController.
  3. 컨트롤러 클래스 설정:
    • 생성된 PlantAPIController 클래스는 ControllerBase 클래스를 상속받아야 합니다. 이를 통해 .NET 애플리케이션에서 컨트롤러와 관련된 일반적인 메서드를 사용할 수 있습니다.
    • APIController 어트리뷰트를 클래스에 추가하여 이 클래스가 API 컨트롤러임을 명시합니다.
  4. 주요 포인트:
    • ControllerBase 상속: API 컨트롤러의 기능을 활성화합니다.
    • APIController 어트리뷰트: 클래스가 API 컨트롤러로 동작하도록 설정합니다.
    • MVC 뷰 지원은 포함하지 않음: 현재 API 애플리케이션에서는 MVC 뷰를 사용하지 않으므로, 관련 지원을 추가하지 않습니다.

현재 컨트롤러는 아직 엔드포인트를 포함하고 있지 않지만, API 컨트롤러로서의 기본 구조를 갖추고 있습니다. 다음 섹션에서 이 컨트롤러에 엔드포인트를 추가하는 방법을 다룰 예정입니다.


using Microsoft.AspNetCore.Mvc;
​
namespace MorePlants_PlantsAPI.Controllers
{
    [ApiController]
    public class PlantAPIController : ControllerBase
    {
        // 여기에 엔드포인트 메서드를 추가할 수 있습니다.
    }
}

위 코드는 PlantAPIController 클래스의 기본 구조를 보여줍니다. ControllerBase를 상속받고, APIController 어트리뷰트를 사용하여 API 컨트롤러로 설정했습니다

프로젝트 리소스 링크

https://github.com/kimdaewoong2022/MorePlants_WebAPI/tree/5be8a24c9faad3ea8d771dc690d4cee8e1826f89