Dev/dotnet core 5

옵션 패턴(Option pattern)

옵션 클래스: 매개 변수가 없는 public 생성자를 사용하는 비추상이어야 합니다. 형식의 모든 공용 읽기-쓰기 속성이 바인딩됩니다. 필드가 바인딩되지 않습니다. 위 코드에서 Position은 바운딩되지 않습니다. Position 필드를 사용하므로 클래스를 구성 공급자에 바인딩할 때 문자열 "Position"을 앱에서 하드 코딩하지 않아도 됩니다. public class PositionOptions { public const string Position = "Position"; public string Title { get; set; } = String.Empty; public string Name { get; set; } = String.Empty; } # JSON - appsettings.json "..

Dev/dotnet core 2023.07.11

dotnet user-secrets

운영에서는 보통 vault를 많이 사용하지만 개발 중에 간단하게 저장하기 위해서 dotnet은 dotnet user-secrets 을 제공합니다. Project 폴더에서 아래의 명령어로 키-값 형태의 정보를 저장할 수 있습니다. dotnet user-secrets init dotnet user-secrets set "key" "value" dotnet user-secrets 는 아래의 command를 지원합니다. Commands: clear Deletes all the application secrets init Set a user secrets ID to enable secret storage list Lists all the application secrets remove Removes the spe..

Dev/dotnet core 2023.05.24

vault v2 api

vault에는 kv를 만들때 v1, v2 버전 두가지가 존재한다. 문제는 데이터를 API로 불러올 경우 v2가 약간 이상해서 정리를 한다. The KV Secrets Engine can operate in different modes. Version 1 is the original generic Secrets Engine the allows for storing of static key/value pairs. Version 2 added more features including data versioning, TTLs, and check and set. > vault secrets list -detailed dev/ kv kv_b23e6e1a map[version:2] dev1/ kv kv_72afe45..

Dev/dotnet core 2023.04.20

Entityframwork core Parameter value 확인

EF Core(Entityframwork core) 쿼리를 실행하는 경우 Parameter의 값이 ?로 로그에 출력 합니다. 이유는 실제 쿼리가 parameter binding되어 실행되기 때문에 쿼리문 자체는 ?로 실행됩니다. 두번째 줄의 Parameters에 ? 와 컬럼 타입 및 CommandTimout 값만 표시 된다. dbug: 2023-04-11 16:19:23.468 RelationalEventId.CommandExecuting[20100] (Microsoft.EntityFrameworkCore.Database.Command) Executing DbCommand [Parameters=[@__GetName_0='?' (Size = 4000)], CommandType='Text', CommandT..

Dev/dotnet core 2023.04.11