일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
- commit
- ListView
- nullable
- C#
- .net
- Microsoft
- File
- windows
- programmers
- Github
- dotNET
- string
- 코딩테스트
- Binding
- csharp
- WPF
- tls
- logging
- Process
- mysql
- algorithm
- convert
- IValueConverter
- Coding
- Visual Studio
- git
- log
- coding-test
- chashtag
- windows10
- Today
- Total
목록C# (73)
CHashtag
안녕하세요. 최근 보안에 대한 인식이 증가하며 TLS 1.0, 1.1이 점점 사라져 가고 있습니다. (사실 최근은 아니지만요,, ㅋㅋ) 작년 즈음에 저는 TLS관련 오류를 해결할 수 있는 방법에 대해 포스팅 한 적이 있습니다. https://chashtag.tistory.com/7 [C#] .net 4.0 기본 연결이 닫혔습니다. (tls 1.2) (https) 기본적으로 .net framework 4.0에서는 tls 1.2가 지원되지 않아 https요청을 보내면 "기본 연결이 닫혔습니다 보내기에서 예기치 않은 오류가 발생했습니다." 라는 에러가 발생합니다. 이때 .net framework chashtag.tistory.com https://chashtag.tistory.com/42 [C#] 요청이 중단..

안녕하세요. Visual Studio 2022에서 Console Project를 생성해 실행하려던 도중 아래와 같은 오류를 발견했습니다. command line에서 "dotnet run" command도 잘 동작하고, bin\Debug 에 존재하는 exe파일을 직접 실행하면 잘 실행되는데 말이죠. 1. Visual Studio Update 우선 미뤄뒀던 Visual Studio를 최신으로 Update했습니다. 그랬더니 바로 되네요,,?? 다음은 뭘 해봐야되나 고민중이였는데,,, 하하 17.0.0 -> 17.0.4 로 업데이트가 되었고, 그 결과 문제가 해결되었습니다. 감사합니다. 도움이 되었길 바랍니다.

참고자료: https://www.youtube.com/watch?v=CXH_jEa8dUw&t=255s (newtonsoft의 창시자.. 멋진분..) gRPC 프로젝트 생성 권장 환경: Visual Studio 2022 "ASP.NET 및 웹 개발" 설치 그럼 gRPC Project를 생성할 수 있다. 아래와 같은 구성의 프로젝트가 생성된다. 이제 client를 생성해보자 그냥 Console App을 생성해주고 Server와 연결해줘야 한다. Dependencies -> Manage Connected Services File -> Server쪽 proto 파일 선택 그럼 자동으로 Client단에 필요한 gRPC관련 nuget packages를 다운받아주고 세팅이 된다. Program.cs 는 아래와 같이 ..

안녕하세요. 오늘은 List에서 원하는 개수만 얻는 방법에 대해 알아보도록 하겠습니다. static void Main(string[] args) { List items = new List(); // 테스트용 string을 넣어줍니다. for(int i=0;i x).Skip(5).Take(3).ToList(); orderedItems.ForEach(x => Console.WriteLine(x)); // output // 5 Item Added // 6 Item Added // 7 Item Added } Take(int count) Take 함수는 Enumerable에 속해있는 함수로, Enumerable에서 0~count까지의 index의 객체를 반환합니다. (만약 count가 list.Count보다 크다..

안녕하세요. 저는 요즘 ChromeDriverUpdater 테스트를 위해 nunit을 사용하고 있는데요, (깨알 라이브러리 홍보) https://github.com/Hyo-Seong/ChromeDriverUpdater GitHub - Hyo-Seong/ChromeDriverUpdater: chrome driver updater chrome driver updater. Contribute to Hyo-Seong/ChromeDriverUpdater development by creating an account on GitHub. github.com 그러던 도중 테스트 프로젝트의 work 디렉터리, 즉 Enviroment.CurrentDirectory가 "%temp%" 를 보고 있었습니다. Test 프로젝트의..

안녕하세요. 오늘은 C#에서 특정 부분의 실행 시간을 측정하는 방법에 대해 알아보로독 하겠습니다. 이 기능은 프로그램의 느린 지점을 찾거나, 더 효율적인 구현 방법을 탐구할 때에 주로 사용됩니다. using System.Diagnostics; public void SomeLogic() { Stopwatch sw = new Stopwatch(); sw.Start(); // logic in here sw.Stop(); long elapsedMilliseconds = sw.ElapsedMilliseconds; // millisecond -> second int elapsedSecond = (int)(elapsedMilliseconds / 1000); } 감사합니다.

안녕하세요. 오늘은 HTTP 통신을 도와주는 라이브러리인 RestSharp을 이용하여 손쉽게 GET, POST요청을 보내는 방법에 대해 알아보도록 하겠습니다. using RestSharp; // 제네릭을 이용하여 Response 객체를 넘기면 자동으로 해당 객체로 변환하여 Return해줌 public static T Request(Method method, string baseUrl, string subUrl, Dictionary header = null, Dictionary queryParameter = null, Dictionary bodyParameter = null) { var restClient = new RestClient(baseUrl); var request = new RestRequest..

안녕하세요. 오늘은 WPF의 핵심 기능인 Binding을 이용하여 다른 Control의 Property(Button이 Griddml Width속성을)를 Binding하는 방법에 대해 알아보도록 하겠습니다. 자기자신의 다른 속성값 얻기 자기자신의 조상(부모) Control의 값 얻기 이때 같은 type의 부모가 둘 이상이라면 어떻게 될까요? 이런 때에는 본인과 가장 인접한 조상을 선택하도록 되어있습니다. 그렇다면 제일 인접한 조상이 아니거나 아예 조상이 아닐 경우에는 어떻게 해야 할까요? x:Name으로 Control 찾기 아래 코드와 같이 x:Name 을 이용하면 해당 이름을 가진 Control에 바로 접근할 수 있습니다. 감사합니다.

안녕하세요. 오늘은 WPF에서 TextBox를 사용할 때 숫자만 입력받는 방법에 대해 알아보도록 하겠습니다. 방법이 간단하여 바로 코드로 설명해드리도록 하겠습니다. PreviewTextInput Event는 Text가 변경되었을 때 값이 반영되기 전에 먼저 들어오는 이벤트입니다. 여기서 e.Handled값을 이용하여 값 변경을 허용할지 말지를 결정짓게 되는겁니다. 따라서 Regex를 이용하여 숫자일 때에만 수정이 가능하게 구현하였습니다. // MainWindow.xaml.cs using System.Text.RegularExpressions; private void TextBox_PreviewTextInput(object sender, TextCompositionEventArgs e) { Regex re..

안녕하세요. 저는 요즘 Visual Studio는 정말 강력한 IDE임을 몸소 느끼고 있습니다. 그래서 오늘은 Visual Studio에서 제공하는 기능중 하나인 다중 프로젝트 실행(디버깅) 에 대해 알려드리도록 하겠습니다. 이 기능은 솔루션 내에 여러 프로젝트가 존재하는데, 동시에 여러 프로젝트를 실행해야 할 때 용이합니다. 우선 아래와 같이 솔루션을 구성하였습니다. 다중 프로젝트 실행을 하려면 우선 솔루션의 속성을 변경하여야 합니다. 그 후, 아래 그림처럼 "Multiple startup project" 를 선택한 뒤 원하는 프로젝트의 Action을 None 에서 "Start" 또는 "Start without debugging" 으로 설정해주시면 됩니다. 프로젝트 리스트 오른쪽에 있는 화살표는 프로젝..