C#(7)
-
[Blazor] MudBlazor 라이브러리를 사용할 수 있게 설정해보자
요즘 평소답지 않게 블로그에 글 많이 쓰는데, 프로그래밍에 대한 이론보다는 도구들 사용법 위주로 글을 쓰는 게 느껴진다. 아무래도 이제 점점 AI와 같은 수많은 도구의 발달로 인해 원론적인 부분에 대한 깊은 이해보다는 그냥 도구를 잘 다루는게 더욱 중요해지는 세상이 오지 않을까 싶어서 요즘 내가 살아온 방식과는 다르게 도구들 위주로 공부해서 그런 거 같다. (이런 종류의 글이 작성하기가 편해서가 아니다.) 자 어찌됐건 오늘도 MudBlazor 라는 도구를 사용할 수 있게끔 설정해보도록 하자. Radzen 이 있는데 뭔 MudBlazor를 사용하냐고 말할 수 있는데, Radzen이랑 MudBlazor는 같이 사용가능 하니까 거부감 갖지 말자. 어쨋든 Blazor WASM로 새 프로젝트를 만들어 보는데, 장..
2024.02.12 -
[Azure] Microsoft Entra ID로 기업용 인증 기능을 구현해보자 2편 (feat Blazor)
연달아서 글쓴다. 아마 그룹 관련 내용까지 포스팅 하면 3편까지 가야할 것 같은데 일단 진행해보자. 일단 이전 글을 안읽고 온 사람은 읽고 오도록 하자. 2024.02.10 - [클라우드 컴퓨팅] - [Azure] Microsoft Entra ID로 기업용 인증 기능을 구현해보자 1편 (feat Blazor) [Azure] Microsoft Entra ID로 기업용 인증 기능을 구현해보자 1편 (feat Blazor) 그동안 업무가 바빠서 평소처럼 블로그에 소홀 했었는데, 이제 연휴라 귀차니즘을 이겨내고 글 한편 쓰기로 했다. 클라우드 시스템에서 인증 관련된 서비스를 제공해주는 거 알 거다. Azure 역시 forsoftwaredev.tistory.com 이제 App.razor 파일로 들어간 다음에 아래..
2024.02.10 -
[C#] is 패턴 매칭, is not 패턴 매칭 에 대해 알아보자
또 오랜만에 글 한편 쓴다 오늘은 간단하게 C# 7.0 부터 도입된 is not 패턴 매칭에 대해 알아보도록 하자 1. is not이 무엇인가? 자, 시작은 이렇다. 우리가 코딩하다 보면 객체의 타입 체크가 필요할 때가 많을거다. 특히 UI 작업하면서 많이 보게 될텐데 element가 TextBlock인지 아닌지 확인해야 한다고 치자. 옛날엔 그냥 if (element is TextBlock) 이렇게 썼겠지만, 이젠 element is not TextBlock textBlock이라고 쓸 수 있다. 이거 존나 편한게 이거 없던 시절엔 아래처럼 써야 된다. element는 임의의 변수고 TextBlock은 임의의 타입이다. var textBlock = element as TextBlock; if(textBl..
2023.11.18 -
Radzen 라이브러리 설정
요즘 배우지도 않은 웹 공부를 하고 있는데 (본인은 전공이 시스템 계열이다), 주력 언어가 C# 이다보니 새로운 언어를 배울 필요 없이 C#으로 웹의 프론트, 백엔드 모두 개발 할 수 있는 개발 툴을 찾다가 Blazor 를 알게 되었다. 기본적인 내용 좀 공부하고 이제 좀 복잡한 UI 를 만들어야 하는데, 직접 만들고 싶지 않아서 (필자는 시스템 (백엔드) 전공이다) 무료 UI 툴을 찾다가 Radzen (https://www.radzen.com/blazor-components/) 이라는 툴을 알게 되었고, 기본적인 포팅법을 기록해두려고 한다. 참고로 필자는 Blazor Webassembly 프로젝트를 생성하였다. 1. Visual Studio의 Nuget에서 Radzen을 검색해서 Client 프로젝트에..
2023.03.08 -
[C#] 디버깅 시 데이터의 조사식 포맷을 변경해보자
DebuggerDisplay * 왜 필요함? 아래와 같이 냉장고를 추상화한 클래스가 있다. public class Refrigerator { /// /// 설정 온도 (도달해야 할 온도) /// public float SetPoint { get; } = 3.0f; /// /// 공급 온도 (설정 온도에 도달하기 위해 공급되는 바람의 온도) /// public float SupplyTemp { get; } = 2.0f; /// /// 순환 온도 (냉장고를 한 바퀴 순환하고 되돌아오는 바람의 온도) /// public float ReturnTemp { get; } = 3.2f; /// /// 냉장고 내부의 습도 /// public float Humid { get; } = 72.5f; public Refrig..
2022.12.30 -
[C#] 열거형 값을 문자열로 사용해보자
Description * 왜 필요함? 코드를 작성하다보면 열거형을 문자열처럼 사용하고 싶을 때가 있다. 예를들어 아래와 같은 열거형이 있다고 보자 public enum PLang { C, Cpp, CSharp, Go, Rust, AJ, } 그리고 이제 아래처럼 출력을 해보면 Console.WriteLine(PLang.Cpp); Console.WriteLine(PLang.CSharp); 문자열로 잘 나온다. 그럼 끝일까? 생각해보면 열거형 목록명은 특수문자나 띄워쓰기 같은게 불가하다. 예를 들어 C++, C# 이런 형태로 쓰는게 불가하다는 뜻 그런데 열거형으로 C++, C# 같은 특수문자가 나오게 하거나 띄워쓰기가 되게 하고 싶다 하면 구현 방법도, 사용방법도 상당히 불편해진다. 불편해지는만큼 코드 유지보..
2022.12.30