2. 모델 클래스를 바탕으로 데이터를 만들어서 JSON으로 출력해주는 Web API를 작성하자. Controllers 폴더에 WebCampServiceController.cs라는 이름으로 Web API 컨트롤러를 생성한다. 기본 생성된 코드를 모두 제거하고 다음과 같이 코드를 작성한다. 발표자 정보는 실제로 데이터베이스에서 많이 읽어 오겠지만, 이번 예제는 인 메모리 데이터베이스 방식으로 직접 출력 용도로만 사용하기에 직접 값을 코드에 입력했다.
▼ /Controllers/WebCampServiceController.cs
using DotNetNote.Models;
using Microsoft.AspNetCore.Mvc;
using System.Collections.Generic;
namespace DotNetNote.Controllers
{
[Route(“api/[controller]”)]
public class WebCampServiceController : Controller
{
[HttpGet]
public IEnumerable<WebCampSpeaker> Get()
{
var lst = new List<WebCampSpeaker>();
lst.Add(new WebCampSpeaker {
Id = 1, Name = “박용준 MVP”, Photo = “박용준 MVP”,
Title = “MVP”,
Description = “데브렉 전임강사” });
lst.Add(new WebCampSpeaker {
Id = 2, Name = “김태영 부장”, Photo = “김태영 부장”,
Title = “Microsoft”,
Description = “한국마이크로소프트 DX, Technical Evangelist” });
lst.Add(new WebCampSpeaker {
Id = 3, Name = “김명신 부장”, Photo = “김명신 부장”,
Title = “Microsoft”,
Description = “한국마이크로소프트 DX, Technical Evangelist” });
lst.Add(new WebCampSpeaker {
Id = 4, Name = “한상훈 MVP”, Photo = “한상훈 MVP”,
Title = “MVP”,
Description = “넥슨 개발자” });
lst.Add(new WebCampSpeaker {
Id = 5, Name = “성지용 부장”, Photo = “성지용 부장”,
Title = “Microsoft”,
Description = “한국마이크로소프트 DX, Technical Evangelist” });
return lst;
}
}
}