더북(TheBook)

2. StronglyTypedConfigurationController.cs 컨트롤러 클래스에서 IOptions<T> 형태로 생성자 매개 변수를 받아서 강력한 형식으로 구성 정보를 가져다 사용할 수 있다. StronglyTypedConfiguration Controller.cs 파일의 내용을 다음과 같이 작성한다. 코드의 Index 액션 메서드에서는 _dnnSettings 개체에 점을 찍으면 자동으로 SiteNameSiteUrl 정보를 인텔리센스로 제공 받을 수 있다.

▼  StronglyTypedConfigurationController.cs 파일의 생성자에 DotNetNoteSettings 클래스 주입

using DotNetNote.Settings;
using Microsoft.AspNetCore.Mvc;
using Microsoft.Extensions.Options;

namespace DotNetNote.Controllers
{
  public class StronglyTypedConfigurationController : Controller
  {
      // 강력한 형식의 클래스의 인스턴스 생성
      private DotNetNoteSettings _dnnSettings;
      public StronglyTypedConfigurationController(
          IOptions<DotNetNoteSettings> options)
      {
          _dnnSettings = options.Value;
      }
      
      public IActionResult Index()
      {
          // 뷰 페이지로 전송
          ViewData[“SiteName”] = _dnnSettings.SiteName;
          ViewBag.SiteUrl = _dnnSettings.SiteUrl;
          
          return View();
      }
  }
}

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.