asp.net core

    [ASP.NET Core] 의존성 주입(Dependency Injection)

    [ASP.NET Core] 의존성 주입(Dependency Injection)

    흔히 '관심사의 분리'라 하는 것으로 MVC pattern의 가장 중요한 특징 중 하나에 해당합니다. program을 이루는 각 부분의 밀접도를 최소화하여 독립성을 유지하고자 하는 개념으로 new를 통해 곧바로 instance를 생성하는 것이 아니라 interface를 이용해 의존성 주입을 구현하고 이로 인해 program을 이루는 각 구성요소의 관심사를 최대한 분리하고자 하는 것이 핵심입니다. 응용 program의 상호의존성이 너무 강하면 하나의 변경사항으로 다른 쪽 수정사항을 유발하게 되고 또 그것으로 인해 생각지 못한 전혀 다른 부분에서의 수정 작업을 거쳐야 하는 등 비효휼적인 과정이 너무 많이 발생할 수 있습니다. 따라서 의존성을 줄이면 서로 간의 변경사항에 대한 영향력을 최소화할 수 있게 됩니다..

    [ASP.NET Core] ASP.NET Core API에 ReactJS 배포하기

    [ASP.NET Core] ASP.NET Core API에 ReactJS 배포하기

    1. NuGet Package에서 Microsoft.AspNetCore.SpaServices.ReactDevelopmentServer를 찾아 설치합니다. 2. Project의 Startup.cs파일에서 다음과 같은 코드를 추가하여 정적 파일 서비스를 등록하고 사용할 수 있도록 설정합니다. --ConfigureServices services.AddSpaStaticFiles(configuration => { configuration.RootPath = "ClientApp/build"; }); --Configure app.UseDefaultFiles(); app.UseStaticFiles(); app.UseSpaStaticFiles(); . . . . app.UseSpa(spa => { spa.Options...

    [ASP.NET Core] MailKit 사용

    'MailKit'이라는 이름으로 프로젝트에 NuGet package를 추가합니다. //발신자 설정 MailboxAddress from = new MailboxAddress("이름(생략가능)", "메일주소"); message.From.Add(from); //수신자 설정 MailboxAddress to = new MailboxAddress("이름(생략가능)", "메일주소"); message.To.Add(to); //메일제목 message.Subject = "안뇽~"; //메일본문 BodyBuilder bodyBuilder = new BodyBuilder(); bodyBuilder.HtmlBody = "반가워~"; //필요한 경우 첨부파일 //bodyBuilder.Attachments.Add("C:\\file..

    [ASP.NET Core] IIS 호스팅

    [ASP.NET Core] IIS 호스팅

    IIS에서 다음과 같은 설정으로 응용프로그램풀을 추가합니다. 아래 주소에서 ASP.NET Core Runtime을 내려 받습니다. 2021.03월 현재 최신버전은 5.0인데 하위 Core 3.1을 배포하는 경우라도 상관없습니다. Download ASP.NET Core 5.0 Runtime (v5.0.4) - Windows Hosting Bundle Installer (microsoft.com) Download ASP.NET Core 5.0 Runtime (v5.0.4) - Windows Hosting Bundle Installer Supported on Windows, Linux, and macOS Get Started dotnet.microsoft.com IIS에서 웹사이트를 추가합니다. 프로젝트가 배..

    [.NET Core] DB로 부터 Model 생성하기 (MySQL/MariaDB)

    [.NET Core] DB로 부터 Model 생성하기 (MySQL/MariaDB)

    Entity Framework을 통해 Model(Entity -> 이하 Model이라고 칭함)을 만들면 모델에 따라 DataBase에 Table을 생성할 수 있습니다. 그런데 키나 값의 제약조건 등 다양한 테이블의 속성을 정확하게 Model로 구현하기가 까다로울뿐더러 Table의 개수가 수십 개가 되면 그와 매핑되는 모델을 만들어 주기도 어려웠습니다. Core이전에는 'ADO.NET Entity Data Model'을 사용했지만 Core는 아직 같은 기능으로 사용할 수 있는 건 없는 듯합니다. 따라서 차라리 직접 Database에 Query나 전용 Tool을 사용해 Table을 생성한 다음 만들어진 Table을 대상으로 Model을 가져오는 편이 나을지도 모르며. 이 글에서는 이러한 방법을 안내하고자 합..