전체 글

전체 글

    [ASP.NET Core] Logging

    [ASP.NET Core] Logging

    1. NuGet Package 설치 NuGet에서 etEscapades.Extensions.Logging.RollingFile package를 project에 설치합니다. 2. Log File 설정 Program.cs를 다음과 같이 수정해 ConfigureLogging method를 설정합니다. Host.CreateDefaultBuilder(args) .ConfigureLogging((hostingContext) => hostingContext.AddFile(options => { options.FileName = "log-"; options.LogDirectory = "Logs"; options.FileSizeLimit = null; //기본 10MB, 단위 MB options.RetainedFileC..

    [ASP.NET Core] Claim 인증과 권한

    [ASP.NET Core] Claim 인증과 권한

    Claim은 특정한 key값을 통해 사용자 인증 및 권한을 관리하며 여기에 필요한 data를 추가하여 사용할 수 있는 인증방법입니다. 1. 기본설정 Startup.cs의 ConfigureServices() method에 인증 및 권한에 관련한 service를 추가합니다. services.AddAuthentication(defaultScheme: CookieAuthenticationDefaults.AuthenticationScheme).AddCookie(option => { option.AccessDeniedPath = "/Home/Error"; option.LoginPath = "/login"; }); services.AddAuthorization(); services.AddHttpContextAcces..

    [ASP.NET Core] 암호화 사용하기(DataProtection)

    1. Class Library형식의 Project를 생성하고 'Microsoft.AspNetCore.DataProtection' 이름의 Nuget package를 설치합니다. 2. project에 다음과 같은 class를 추가해 사용할 암호화 algorithm을 지정합니다. 예제에서는 myWebLibrary라는 이름의 project를 생성하였습니다. using Microsoft.Extensions.DependencyInjection; using System; using Microsoft.AspNetCore.DataProtection; using Microsoft.AspNetCore.DataProtection.AuthenticatedEncryption.ConfigurationModel; namespace ..

    [ASP.NET Core] SQL 사용하기

    아래 method를 사용하기 위해서는 Microsoft.EntityFrameworkCore와 Microsoft.EntityFrameworkCore.Relational package가 설치되어 있어하며 using Microsoft.EntityFrameworkCore; 으로 namespace사용을 선언합니다. 1. FromSqlRaw / FromSqlInterpolated TestContext tc = new TestContext(); tc.TblUser.FromSqlRaw($"Select seq, userID, userPW From TBL_User;").ToList(); //또는 string user = "abc"; tc.TblUser.FromSqlRaw($"Select seq, userID, userPW..

    [ASP.NET Core] Entity Framework Core (Code-First)

    [ASP.NET Core] Entity Framework Core (Code-First)

    Entity Framework Core는 응용 program과 database 간 연동을 위한 것으로, 사용하는 방식에 따라 Code-First방식과 DB-First방식 2가지가 존재합니다. Code-First방식은 C#으로 Code를 작성하고 해당 Code를 통해 DB에 Table을 생성해서 사용하는 방식이며 반대로 DB-First방식은 DB에 Table을 먼저 생성하고 생성된 Table의 사양에 맞춰 C# Code로 생성해 사용하는 방식입니다. 위 2가지 방식중에서 먼저 Code-First방식에 대해 알아보고자 합니다. Code-First방식은 C#으로 Code를 먼저 작성한다고 하였는데 [.NET/ASP.NET Core] - [ASP.NET Core] 의존성 주입(Dependency Injectio..

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

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

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

    [ASP.NET Core] MVC Pattern

    [ASP.NET Core] MVC Pattern

    MVC는 Model, View, Controller를 의미하는 것으로 이 3개의 구조를 통해 web project가 완성되는 것을 말합니다. 해당 구조의 간단한 예를 만들어 보기 위해 가상의 website에서 login 하는 과정으로 mvc pattern구조를 적용해 보도록 하겠습니다. Visual Studio 2019를 시작해 새 project에서 'ASP.NET Core Empty'를 선택합니다. project이름 따윈 중요하지 않으므로 대충 입력하고 넘어갑니다. project는 아무것도 없는 상태에서 시작하므로 몇 가지 사전 설정이 필요합니다. project에서 startup.cs file을 열고 다음과 같이 수정합니다. namespace WebApplication1 { public class St..

    샤오미 미노트북 프로 15(xiaomi Mi Notebook Pro 15) - 사용기

    샤오미 미노트북 프로 15(xiaomi Mi Notebook Pro 15) - 사용기

    샤오미 노트북을 구매하고 한 달간을 사용해 봤는데 총평을 먼저 하자면 전체적으로 만족스러운 노트북인 듯합니다. 우선 성능부터 확인해 보자면 CINEBENCH R23으로 측정 결과 싱글코어 1275점, 멀티코어 4006점으로 평가되었습니다. 그래픽 측정을 위한 Fire Strike점수는 아래와 같으며 Time Spy값은 다음과 같이 측정되었습니다. 각 성능 측정치는 해당 측정 툴을 3회 연속 동작 후 얻어진 값임을 말씀드립니다. 그럼 이제 노트북을 사용하면서 느낀 단점과 장점에 대해 말씀드리겠습니다. 1. 장점 ● 디스플레이 해당 노트북의 디스플레이는 OLED 제품이며 15.6인치에 3.5K 해상도를 가지고 있습니다. 최대 600 nit 밝기까지 지원해서 밝은 대낮에 야외에서 사용해도 무리가 없을 정도였습..