Programming110 [npm] windows npm 업데이트 하기 가장 마음 편한 방법은 Node.js를 다시 설치하는 것이다. https://nodejs.org/ Node.js — Run JavaScript Everywhere Node.js® is a JavaScript runtime built on Chrome's V8 JavaScript engine. nodejs.org npm 업데이트만 하고 싶다면 아래 방법을 이용하자. Node.js v16 이상 npm install -g npm Node.js v14 이하 Powershell 관리자 모드로 실행 후 Set-ExecutionPolicy Unrestricted -Scope CurrentUser -Force npm install -g npm-windows-upgrade npm-windows-upgrade 2024. 4. 11. [C#] 반복문에서 삼항연산자 vs Func 뭐가 좋을까? 업무를 하다가 문득 이런 생각이 들었다. '다음과 같은 반복문 안에서 _condition은 항상 true 또는 false인데 매번 for문 안에서 체크하는 것이 비효율적인 것 같다.' for (var i = 0; i input * 2 : input => input; for (var i = 0; i < repeat; i++) { va.. 2024. 3. 8. [MAUI] 다른 페이지로 이동하기 XAML 파일에 아래와 같이 버튼을 추가한다. Code behind에 이벤트 핸들러를 추가한다. (평소처럼 async Task 사용하면 XFC0002 error가 발생한다. 나는 한참을 헤맸다...😢) private async void OnMovePageClicked(object sender, EventArgs e) { var viewModel = new DragAndDropViewModel(3); await Navigation.PushAsync(new DragAndDropPage(viewModel)); } 이전 페이지로 돌아가려면 아래 코드를 이용하면 된다. await Navigation.PopAsync(); 실습 영상 https://youtu.be/Yry9HbwID-U?si=tmOwkQxWjxkvXG.. 2024. 3. 7. [.NET] Rx.NET Error Handling https://introtorx.com/chapters/error-handling-operators Error Handling Operators | Introduction to Rx.NET Error Handling Operators Exceptions happen. Some exceptions are inherently avoidable, occurring only because of bugs in our code. For example, if we put the CLR into a situation where it has to raise introtorx.com 2024. 2. 23. [C#] Linq SingleOrDefault() vs FirstOrDefault() Linq를 사용하다 보면 자주 쓰는 SingleOrDefault와 FirstOrDefault. 둘의 차이점이 뭘까? 테스트를 위한 코드를 준비한다. string?[] empty = []; string?[] oneElement = ["a"]; string?[] twoElements = ["a", "b"]; var firstEmpty = empty.FirstOrDefault(); var singleEmpty = empty.SingleOrDefault(); var firstOneElement = oneElement.FirstOrDefault(); var singleOneElement = oneElement.SingleOrDefault(); var firstTwoElement = twoElements.First.. 2024. 2. 17. [Visual Studio] 외부 라이브러리 코드(External Code) 디버깅하기 가끔 라이브러리 코드를 디버깅하고 싶을 때가 있다. Visual Studio에서 Tools > Options 클릭한다. 아래 Debugging 메뉴를 선택하고 Enable Just My Code를 체크 해제한다. 잘 동작하는지 확인해 보자. 아래와 같이 외부 코드에 중단점을 걸고, F11(Step Into)을 클릭한다. 다음과 같이 외부 코드지만 디버깅할 수 있게 되었다. 아래 링크에서 Swashbuckle.AspNetCore package의 실제 소스코드와 동일한 것을 확인할 수 있다. https://github.com/domaindrivendev/Swashbuckle.AspNetCore/blob/master/src/Swashbuckle.AspNetCore.SwaggerGen/DependencyInje.. 2024. 2. 16. [javascript] jquery one()의 vanilla js once 옵션을 이용하면 된다. document.getElementById('btnTest').addEventListener('click', () => { // do something }, { once: true, }); https://developer.mozilla.org/en-US/docs/Web/API/EventTarget/addEventListener EventTarget: addEventListener() method - Web APIs | MDN The addEventListener() method of the EventTarget interface sets up a function that will be called whenever the specified event is delivered .. 2024. 2. 11. C# private field naming 규칙 설정하기(editorconfig, IDE) VS 2022에서 Create and assign field '...' 기능을 통해 만들면 다음과 같은 preview가 보인다. 자동으로 생성되는 field명이 camel case로 명명되어서 킹받게도 constructor 내부에서 this를 사용하게 된다. 일반적으로 private field명은 underscore + camel case로 사용한다. .editorconfig 파일을 수정하는 방법 .editorconfig 파일에서 다음과 같이 설정한다. [*.{cs,vb}] dotnet_naming_rule.private_members_with_underscore.symbols = private_fields dotnet_naming_rule.private_members_with_underscore.sty.. 2024. 2. 10. [C#] BsonDocument를 JSON으로 변환하기 MongoDB를 사용하면 BsonDocument와 친해지게 된다. 서버와 클라이언트의 통신에는 JSON 형태로 하는 경우가 많아서 JSON으로 변환이 필요한 상황이 있다. ToJson() BsonExtensionMethods를 이용하면 JSON string으로 변환할 수 있다. var actual = collection.Find(c => c.Id == targetId).FirstOrDefault(); var json = actual.ToJson(); 그런데 다음과 같이 ObjectId(), NumberDecimal(), IsoDate() 같은 값들이 표시된다. 그리고 이것은 JSON parsing error를 발생시킬 수 있다. { "_id": ObjectId("507f1f77bcf86cd79943901.. 2024. 2. 9. 이전 1 2 3 4 5 6 ··· 13 다음