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