c#
-
EF Core 시작하기(1) - ef core 패키지 설치, DB 연결.NET/Database 2023. 12. 17. 06:16
EF Core EF Core는 닷넷의 ORM도구인 Entity Framework를 오픈 소스 플랫폼 교차 버전으로 만든 것 입니다. Entity Framework가 visual studio 환경에 종속적이고 GUI환경에 윈도우창으로 나오는 설계 도구를 사용해서 사용했다면, EF Core는 Cli기반이므로 Visual sutdio를 사용할 수 없는 리눅스나, 맥에서도 터미널을 통해서 사용할 수 있습니다. 이 포스트에서는 DBMS로 MySql을 사용하고 있고, docker를 이용해서 로컬에 설치하고 진행했습니다. IDE는 Rider를 사용하였습니다. 맥이나 리눅스에서도 동일하게 사용할 수 있습니다. 이부분은 포스트에서는 생략합니다. dotnet tool 설정 dotnet sdk가 설치되어 있다면 터미널에서 ..
-
C# 문법 Null Safety.NET/Common 2022. 9. 17. 21:52
C# NULL Safety C# 8.0에서는 다음과 같은 Nullsafety 연산자를 지원한다. NULL 대체할당 var nullstring = null; nullstring ??= "null일경우 대체할 스트링" 이 문법을 사용하면 다음과 같이 Null check하고 할당하는 코드를 단 한줄로 줄일 수 있다. if(nullstring == null) { nullstring = "null일경우 대체할 스트링"; } null safety 연산자를 해석하면 다음과 같다. A??=B ; A(좌측변수)가 널이라면 B(우측변수)를 A에 할당한다 NULL 대체 NULL값이 들어있는 변수를 대체하는 연산자는 ?? 이다. var nullstring = null; Console.WriteLine(nullstring?? ..
-
Regex 정규식 활용 그룹명.NET/Common 2022. 9. 7. 13:11
static void Main(string[] args) { Regex regex = new Regex(@"^(?.+?)_(?.+)\..+$"); var match = regex.Match("TEST_PID12345678.csv"); Dictionary keyValues = new Dictionary(); if(match.Success) { foreach (string groupName in regex.GetGroupNames()) { if (char.IsDigit(groupName.ToCharArray()[0])) continue; //숫자로 그룹명 자동생성 keyValues.Add(groupName, match.Groups[groupName].Value); } Console.WriteLine(keyV..
-
C# RS232 통신.NET/Common 2022. 9. 4. 00:03
설비나 계측기에 대한 데이터값을 받을때 자주 사용합니다. public partial class FormSerialblog : Form { SerialPort Port = new SerialPort(); Queue Datas = new Queue(); public FormSerialblog() { InitializeComponent(); Port.PortName = "COM1"; Port.BaudRate = 9600; Port.DataReceived += Port_DataReceived; Port.Open(); } private void Port_DataReceived(object sender, SerialDataReceivedEventArgs e) { Thread.Sleep(100); var readSt..