.NET/개념 및 유용한 팁
-
[Entity Framework] MySQL 에서 Entity Framework 사용.NET/개념 및 유용한 팁 2020. 3. 16. 14:02
SQL Server와 달리, MySQL은 미리 구축된 DB를 EntityFramework 모델로 가져오려 할때, 사용불가 메시지나, 가져오려다 죽는 문제가 발생한다. 그래서 꼼수로 MSSQL에 동일한 형태의 테이블을 생성한 뒤, 해당 테이블을 불러와 연결정보를 바꿔 사용하는 방식을 사용했었다. 그러던 중 스택오버플로우의 해결방법이 검색되어 아래 링크에 적힌 방법대로 따라해보았다. https://stackoverflow.com/questions/21241184/cannot-obtain-provider-factory-for-data-provider-named-mysql-data-mysqlclient Cannot obtain provider factory for data provider named MySql...
-
[Async/Await] Invoke보다 간편하게 UI 접근하기.NET/개념 및 유용한 팁 2019. 12. 19. 23:46
비동기 프로그래밍(async, await)에 대한 올바른 사용법에 대한 문서가 있습니다. https://ddochea.tistory.com/212 를 참조해주세요. 2015년도에 작성했던 포스트 "2015/01/11 - [C#] - [Invoke & BeginInvoke] 1. 다른 Thread 에서 UI 접근하기 (1)" 가 현재까지도 부동의 1순위를 기록하고 있다. 일간 방문자수의 절반이상이 해당 포스트 관련 접근이다. 멱살잡고 캐리중 그런데 좀 찝찝하다. 2012년쯤? 부터 .NET 4.5 및 C# 5.0가 발표되면서 async, await가 소개되었었고, 2015년에 Invoke & BeginInvoke 다루는 나도 참 늦게배운다 생각했는데, 2020년이 오는 중에도 Invoke와 BeginInv..
-
[WCF] 3. 이중계약으로 콜백기능 구현하기.NET/개념 및 유용한 팁 2015. 4. 5. 16:35
WCF는 .NET Core 및 새로운 .NET 에서 소개하는 gRPC로 대체되었습니다. 유지보수 외 신규 개발에선 추천하지 않습니다. 참조 : https://docs.microsoft.com/ko-kr/aspnet/core/grpc/why-migrate-wcf-to-dotnet-grpc?view=aspnetcore-5.0#grpc-as-a-migration-path-for-wcf-to-net-core-and-net-5 HelloWorld 예제에선 WCF 클라이언트가 계약으로 구성된 서비스 클라이언트 객체를 통해 서비스를 호출함으로서 WCF 기능을 사용하였다. 그렇다면 반대로 서비스에서 브로드캐스팅 목적으로 클라이언트에게 전파해야 할 필요성이 있을땐 어떻게 해야할까? WCF 시스템 바인딩에서는 이를 해결하..
-
[WCF] 2. WCF 개념.NET/개념 및 유용한 팁 2015. 3. 28. 17:32
WCF는 .NET Core 및 새로운 .NET 에서 소개하는 gRPC로 대체되었습니다. 유지보수 외 신규 개발에선 추천하지 않습니다. 참조 : https://docs.microsoft.com/ko-kr/aspnet/core/grpc/why-migrate-wcf-to-dotnet-grpc?view=aspnetcore-5.0#grpc-as-a-migration-path-for-wcf-to-net-core-and-net-5 WCF의 핵심적인 요소는 크게 주소(Address), 바인딩(Binding), 계약(Contract)으로 구성된다. 그리고 이 3가지를 통틀어 서비스 끝점(Service EndPoint)이라고 한다. 1. 주소(Address) : 웹 브라우저에서 흔히 볼 수 있는 URL을 의미하며. Hel..
-
[WCF] 1. Helloworld.NET/개념 및 유용한 팁 2015. 2. 18. 20:50
WCF는 .NET Core 및 새로운 .NET 에서 소개하는 gRPC로 대체되었습니다. 유지보수 외 신규 개발에선 추천하지 않습니다. 참조 : https://docs.microsoft.com/ko-kr/aspnet/core/grpc/why-migrate-wcf-to-dotnet-grpc?view=aspnetcore-5.0#grpc-as-a-migration-path-for-wcf-to-net-core-and-net-5 WCF 학습을 위해 작성한 소스이다. 콘솔 프로젝트에서 작성하였다. (해당 소스를 실행하기위해선 Visual Studio가 관리자모드로 실행되어야 한다. 완성된 프로그램이 관리자권한을 요청할 수 있도록 제작하려면 app.manifest를 프로젝트에 추가하여 파일 내용중 requestedEx..
-
[ADO.NET] DSN없이 ODBC 연결로 DB에 대한 Table 정보 가져오기.NET/개념 및 유용한 팁 2015. 2. 7. 22:27
ADO.NET 및 ODBC를 이용한 전통적인 쿼리 연동 방식은 더 이상 선호되지 않습니다. EntityFramework 또는 Dapper를 이용한 ORM 방식의 DB연동을 사용해보세요. using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Data.SqlClient; using System.Data.Odbc; namespace DynamicDBread { class Program { /// /// DB가 구축된 서버의 IP /// static string IP = "localhost"; /// /// DB 드라이버명 'odbc 데..
-
[Invoke & BeginInvoke] 1. 다른 Thread 에서 UI 접근하기 (2).NET/개념 및 유용한 팁 2015. 1. 12. 18:04
async / await를 이용한 보다 간편한 UI 접근방법을 포스트로 작성하였습니다. 해당 포스트와 함께 https://ddochea.tistory.com/40를 함께 참고해주시기 바랍니다. 지난 시간엔 Invoke를 사용하여 오래걸리는 작업에 대한 결과를 UI 멈춤 없이 표현하는 방법을 포스트했다. 이런 기능을 통해 데이터베이스에 연결, 조회, 수정과 같은 작업이나, 네트워크 통신에 대한 연결, 송신 및 수신 작업에 대해 다른 스레드로 두고, 그 상태나 결과에 대해 UI에 표현하여, 사용자의 요청에 지체없이 응답할 수 있는 프로그램을 개발하는데 응용할 수 있다. :-) 그러나 때론 UI 자체에서 큰 작업을 진행되는 경우가 있다. 가령 대용량으로 조회된 데이터를 하나의 표(Table) 컨트롤에 표현한다..
-
[Invoke & BeginInvoke] 1. 다른 Thread 에서 UI 접근하기 (1).NET/개념 및 유용한 팁 2015. 1. 11. 11:00
async / await를 이용한 보다 간편한 UI 접근방법을 포스트로 작성하였습니다. 해당 포스트와 함께 https://ddochea.tistory.com/40를 함께 참고해주시기 바랍니다. 오랜 시간이 걸리는 작업에 대해선 Thread를 생성하여 처리하는 것은 어느 프로그램이나 마찬가지일 것이다. C# 기반 프로그램도 예외는 아니다. 만일 Thread 없이 만들면 어떻게 될까? Thread를 선언하지 않은 상태에서 아래와 같은 프로그램을 만들어보았다. 해당 프로그램은 입력한 수 x 만큼 2를 더하는 프로그램. 즉, x*2를 덧셈만으로 계산하는 프로그램이다. [그림 1] 입력한 수 x 만큼 2를 더하는 프로그램 다음 프로그램의 소스는 아래와 같다. using System; using System; us..