개인정보 * 표 마스킹 헬퍼
·
C#.NET/C#
어떤 프로젝트의 개인정보 보호가 매우 높아서모든 메뉴 개인정보가 표시되는 부분에 개인정보 부분을 마스킹 처리해 달라는 요청을 받은적이 있었다.그래서 작성된 코드이다. 1. 메인코드기본 asp.net mvc 의 netframework 4.6 정도 c# 7.3에서 동작 가능하지만 아마도 c#6 에서동작 가능할 것으로 보인다. 이 부분이; 문제가 되면 문자열 보간 부분만 string.Format() 로 바꿔주면 될 것으로 보인다.using System;using System.Linq;using System.Text.RegularExpressions;namespace DogAcademy.Lib{ /// /// 문자열 마스킹 유틸리티 /// public class MaskingUtilit..
확장 메서드
·
C#.NET/C#
C# 확장 메서드는 기존 클래스의 코드를 직접 수정하지 않고도 새로운 기능을 추가할 수 있게 해주는 특별한 문법입니다. 마치 원래부터 그 클래스에 포함된 메서드인 것처럼 사용할 수 있어 매우 편리합니다. 확장메서드에 대한 사전적 정의이며 아래 코드를 가지고 예를 들자면 - DateTime.Now() 을 사용하면 "2025-08-03 오후 4:56:24" 라고 C# 에서는 기본 날짜포맷이 사용되어 표시된다. - 이를 24시간 형태로 " 2025-08-03 16:56" 표현 하고자 할때 a) 유틸리티 메서드를 개발하는 방식 b) DateTime 자료형에 확자에서드를 구현하여 DateTime 자료형에 . 을 찍어서 특정자료형에 유틸리티메서드를 직관적으로 표현하는 형태가 있다. c) 즉 Dat..
VisualStudio 2022 단축키 모음
·
C#.NET/C#
출처의 내용에 대해 AI요약 정리 한 내용이다. 출저 :https://learn.microsoft.com/ko-kr/visualstudio/ide/default-keyboard-shortcuts-in-visual-studio?view=vs-2022 바로 가기 키 - Visual Studio (Windows)다양한 명령과 창에 액세스할 수 있는 Visual Studio 기본 바로 가기 키에 대해 알아봅니다.learn.microsoft.com 분류기능단축키설명편집 (Editing)코드 자동 정렬Ctrl + K, D현재 문서의 코드 서식을 자동으로 정리합니다.주석 처리/해제Ctrl + K, C / Ctrl + K, U선택한 코드 블록을 주석으로 만들거나 주석을 해제합니다.선택 영역 확장/축소Ctrl + W /..
C# 에서 POST로 API 보내기
·
C#.NET/C#
한동안 API 지옥에 바졌다 헤어난 기념으로c#을 이용한 API 소스코드를 정리해본다.자바스크립트의 Ajax 나 Fetch 와 같은 방법을 c# 으로 보내는 방법이다굳이 서버api를 사용하는 이유는- 데이터 노출이 되지 않는다- 대용량 발송 시 성능이 좋음- 브라우저의 CORS 제한을 받지 않음1. NewtonSoft.JSON 사용- 익명 JSON 을 매개변수로 사용using System;using System.Net.Http;using System.Text;using System.Threading.Tasks;using Newtonsoft.Json;public class SampleAPI{ private static readonly HttpClient client = new HttpClient()..
Dapper ORM 사용 예제
·
C#.NET/C#
ADO.NET과 가장 동일하며 쿼리문을 직접 제어할 때 사용되는 Dapper 에 대한 사용법을 정리해 보았다.- Dapper ORM 은 일반적으로 MSSQL, MYSQL(MariaDB), Oracle, PostgreSQL, SQLite를 지원하며 이 밖에 다른 프로바이더들도 지원할 수 있다.- Dapper 는 오픈 소스이다 (https://github.com/DapperLib/Dapper)- NuGet 패키지를 통해 설치 가능하다 (https://www.nuget.org/packages/dapper)- 연결문자열을 만들기 위해 MSSQL 기준 NetCore 에서는 System.Data.SqlClient 를 NuGet 에서 받아야 할 수 있다.- NET의 ORM중 EFCore 대비 높은 성능을 보여준다. ..
Spring의 Class ToString 을 비슷하게 구현해보자
·
C#.NET/C#
Java에서는 Class에 ToString()을 오버라이드 하여 디버깅 값을 찍어볼 수 있는것이 큰 장점이다.물론 @Override 아래 구문은 IDE를 통해 클릭 한번으로 구현하는 방법이다.이를 c#에서 구현하여 사용해 보자.c# 의 경우 IDE가 아닌 언어 자체의 확장메소드를 제공하기에 더 편리하게 사용할 수 있다.- 아래의 코드를 공통 프레임워크에 넣어두자 public static string ToValue(this object obj) { if (obj == null) return "null"; Type type = obj.GetType(); PropertyInfo[] properties = type.GetProperties(); StringBuilder s..
간단 텍스트 파일 로그 생성
·
C#.NET/C#
Nuget에서 받을 수 있는 Log4NET나 Core에서는 자체제공 ILogger 와 같은 것들이 있지만..그래도 상황에 따라 간단하게 막 사용하는 텍스트 파일 로깅을 구현해서 사용 하였다. public class TextLog { // 경로를 Config에 넣어놓고 가져다 사용하는 것이 좋다 // 기본 경로는 웹사이트 기준 /www/TextLog 가 된다. 쓰기 금지가 되어 있다면 폴더에 IUSER 계정에 대해 쓰기 권한을 줘야한다 private static readonly string LogPath = HttpContext.Current.Server.MapPath("/TextLog/").ToString(); /// /// ..
c# 권장 코딩 규칙 가이드
·
C#.NET/C#
몇몇 회사를 보면, ASP시절 관습이 그대로 남아 닷넷으로 넘어온 일부 개발자들이 객체지향 방식의 명명법 코딩 스타일을 완전히 무시하고 과거 스타일로 명명하거나 코딩을 하는 경우를 종종 본다.그것이 옳고 틀림이 아닌 코딩 규칙은 권장사항이지만 이를 잘 지켜준다면 코딩의 가독성도 향상되어 보기 좋을뿐 아니라, 유지보수에서도 암호문을 읽지 않아 간결한 유지보수가 되지 않을까?프로그램의 실력이 뛰어난 부분도 중요하지만 말 그대로 언어를 잘 표현하는것도 중요하다 생각합니다. 1. MS에서 제공하는 표준 c# 표준 코딩 규칙출처 : https://docs.microsoft.com/ko-kr/dotnet/csharp/programming-guide/inside-a-program/coding-conventions 코..