.net 7

EF Core 최신 N 연관관계 매핑

EF Core에서 N(Many-to-Many) 관계 매핑Entity Framework Core (EF Core)는 객체-관계형 매퍼(ORM)로, 데이터베이스와 객체 지향 프로그래밍을 연결하는 데 도움을 줍니다. EF Core 5.0 이상 버전에서는 Many-to-Many (N) 관계를 보다 간편하게 설정할 수 있습니다. 이 글에서는 최신 EF Core를 사용하여 Many-to-Many 관계를 설정하고, 이를 활용하는 방법을 설명합니다. 1. Many-to-Many 관계 개요Many-to-Many 관계는 두 엔티티가 서로 여러 관계를 가질 수 있는 경우를 의미합니다. 예를 들어, 학생(Student)은 여러 과목(Course)을 수강할 수 있고, 과목도 여러 학생이 수강할 수 있습니다.  2. 모델 클래스..

C# 2024.07.14

C# 비동기 프로그래밍: 비동기 vs 동기 처리

이 글에서는 비동기와 동기 처리의 차이를 코드 예제를 통해 비교해 보겠습니다.  동기 프로그래밍동기 프로그래밍에서는 각 작업이 순차적으로 실행됩니다. 한 작업이 완료될 때까지 다음 작업이 시작되지 않습니다. 이러한 방식은 간단하지만, 여러 작업을 동시에 처리해야 할 때 비효율적일 수 있습니다.동기 프로그래밍 예제다음은 동기적으로 아침 식사를 준비하는 코드 예제입니다. 이 코드는 커피를 만들고, 계란을 부치고, 베이컨을 굽고, 토스트를 준비하는 순서로 실행됩니다. C#using System;using System.Diagnostics;using System.Threading.Tasks;namespace SyncExample{ internal class Bacon { } internal class..

C# 2024.07.10

.NET Core Window Service 배포 방법

NET Core 애플리케이션을 Windows 서비스로 배포하는 방법에 대해 알아보겠습니다. 이 포스트에서는 애플리케이션을 빌드하고, 배포하고, Windows 서비스를 생성하는 방법을 설명합니다. 1. Windows 서비스 설정 먼저, Program.cs 파일에서 Windows 서비스 설정을 추가합니다. 이 설정은 .NET 애플리케이션을 Windows 서비스로 실행할 때 사용하는 서비스 이름을 설정합니다. builder.Host.UseWindowsService(option => option.ServiceName = "iSecureMqttServer"); 이 코드는 .NET 애플리케이션 내부에서만 사용되며, Windows 서비스 관리자와는 관련이 없습니다. 이 설정은 애플리케이션이 서비스의 상태를 확인하거나..

C# 2024.04.22

.NET Framework 에서 Windows 서비스 사용 하는 방법

프로젝트 Service 관련 설정 1. 본인이 배포하길 원하는 service를 우클릭 후 디자이너 보기 클릭 2, 검은 화면에서 우클릭 후 설치 관리자 추가 클릭 3. serviceInstaller 우클릭 후 속성 클릭 ServiceName, DisplayName, Description 등 설정 StartType 은 Automatic으로 설정해주면 된다. 4. serviceProcessInstaller 에서 Account는 LocalSystem으로 변경 5. 모든 설정이 완료됐다면 build를 해준다. WindowService 설치 1. 명령 프롬프트 (CMD) 를 이용해서 설치하기 1-1. 명령 프롬프트(cmd) 를 관리자 권한으로 실행 1-2. InstallUtil.exe 도구가 있는 디렉터리로 이동..

C# 2024.04.19

MQTT Protocol 의 특징 및 사용

MQTT MQTT(MQ Telemetry Transport)는 경량 메시징 프로토콜로, 네트워크에 연결된 장치들 간의 효율적인 통신을 위해 설계되었습니다. 이 프로토콜은 IoT(Internet of Things) 및 M2M(Machine-to-Machine) 통신에서 널리 사용되며, 낮은 대역폭, 제한된 네트워크 리소스, 불안정한 네트워크 연결과 같은 제약 사항을 고려하여 개발되었습니다. MQTT는 클라이언트-브로커-서버 모델을 따르며, 주로 발행-구독(pub-sub) 패턴을 사용하여 메시지를 전달합니다. 이 패턴은 여러 클라이언트가 메시지를 발행하고 해당 메시지를 구독하는 브로커를 통해 효율적으로 전달되는 것을 의미합니다. 특징 MQTT의 주요 특징은 다음과 같습니다: 경량성: MQTT는 간단하고 경량..

C# 2024.02.27

Interop 라이브러리

Interop Interop.xxx.dll 파일들은 COM(Components Object Model) 형식의 라이브러리를 .NET 환경에서 사용하기 위한 인터오퍼 라이브러리이다. COM은 플랫폼 간 상호 운용성을 지원하기 위한 마이크로소프트의 기술로, 여러 언어와 환경에서 사용할 수 있는 컴포넌트 기반의 소프트웨어 개발 모델이다. COM 컴포넌트와 .NET 언어 간의 통신 지원 : COM은 C++ 등의 언어로 작성된 컴포넌트를 .NET 언어에서 사용할 수 있게 해주는 인터페이스를 제공한다. Interop 라이브러리는 이러한 인터페이스를 .NET 에서 호출할 수 있도록 *래핑 하고 변환한다. *타입 라이브러리(Typelib)에서 정보 추출 : COM 컴포넌트들은 타입 라이브러리에 정보를 저장하고, Int..

C# 2023.12.12

C# .NET 프레임 워크 && Entity Framework

. NET 프레임워크 ASP.NET Web Forms 서버 측 컨트롤과 사용자 인터페이스를 생성하는 데 사용됩니다. Windows Forms와 유사한 방식으로 동작하여 UI를 쉽게 구축할 수 있게 합니다. 특히, 이는 이전의 Windows Forms 개발자들이 웹 애플리케이션을 구축하기 쉽게 만들어주는 장점이 있습니다. 그러나 최근에는 ASP.NET MVC나 ASP.NET Core 등의 새로운 웹 개발 패러다임이 등장하면서, 더 모던하고 유연한 웹 애플리케이션을 구축하는 데에는 이들이 더 적합할 수 있습니다. ASP.NET MVC (Model - View - Controller) MVC는 Model-View-Controller 아키텍처를 기반으로 하는 웹 응용 프로그램 개발을 지원합니다. 이는 더 테스트..

C# 2023.11.20