본문 바로가기

.NET/C#

(75)
Optimizing ASP.NET Core Docker Image sizes 출처 : https://www.hanselman.com/blog/OptimizingASPNETCoreDockerImageSizes.aspx ASP.NET Docker 이미지 크기 최적화에 대한 2016 년 Steve Laster 의 훌륭한 글이 있습니다 . 이후 Docker는 다단계 빌드 파일을 추가하여 하나의 Dockerfile에서 더 많은 작업을 수행 할 수 있습니다. 컨테이너는 쉽고 신뢰할 수있는 배포 방법이며 밀도에 관한 것입니다. 가능한 한 적은 메모리를 사용하고 싶지만 가능한 한 작게 만들어서 네트워크를 이동하는 데 시간을 낭비하지 않는 것이 좋습니다. 이미지 파일의 크기는 컨테이너 시작 시간에도 영향을 줄 수 있습니다. 게다가 그것은 단지 깔끔합니다.저는 제 책상에 약간의 6 노드 Raspb..
HTTP POST 데이테를 모듈로 만들어 로깅하는방법 출처: https://www.codeproject.com/Tips/1213108/HttpModule-for-logging-HTTP-POST-data-in-IIS-Log 소개때때로 ASP.NET 응용 프로그램에서 향후 분석 (사건 관리, 통계 등)을 위해 HTTP POST 데이터를 기록해야 할 필요가 있습니다. IIS는 표준 로깅 기능을 사용하여 HTTP GET 매개 변수를 즉시 저장하지만이 팁은 HTTP POST 데이터를 저장하는 것에 관한 것입니다. 이는 다소 까다 롭습니다. 고급 로깅이라는 또 다른 기능이있어 IIS 로그에 모든 데이터를 저장할 수 있지만이 경우 기존 웹 응용 프로그램을 변경하지 않으려는 경우 수동으로 데이터를 게시해야합니다. 그리 유용하지는 않습니다.배경다행히도이 문제를 해결하는 데..
가독성 높은 XAML 작성 출처: https://www.codeproject.com/Tips/1212669/Formating-XAML-for-readability 서론과 문제의 근원VS 디자이너 또는 블렌드를 사용하여 XAML 뷰를 디자인하고 만드는 경우 모든 속성이 단일 행에 작성됩니다.이 동작은 코드 유지 보수성 및 버전 제어 시스템에 좋지 않습니다. 이러한 XAML을 손쉽게 편집 할 수는 없습니다. 속성에서 손실 될 수 있기 때문입니다.또한 모든 버전 제어 시스템은 회선 차등 추적을 기반으로합니다. 즉, 속성 변경으로 전체 행이 변경되므로 파일의 두 상태 간 차이점을 쉽게 볼 수 없습니다.가능한 해결책늘 그렇듯이이 문제를 극복하는 몇 가지 방법이 있습니다. 첫 번째 방법은 수동으로 수행하는 것입니다. 이상적으로는 각 속성을 ..
C# - 오피스 엑셀 97-2003 .xls 파일에 대해 32비트/64비트 상관없이 접근 방법 http://sysnet.pe.kr/221117653467오피스 엑셀(Excel) 구 버전의 포맷(Excel 97-2003 Workbook)으로 저장된 파일(.xls)을 C#에서 접근하려면 "Microsoft.ACE.OLEDB.12.0" 제공자를 이용해 접근하시면 됩니다. 그런데 근래의 Office 2016 제품군의 엑셀을 설치하는 경우 기본적으로 Microsoft.ACE.OLEDB.12.0 제공자는 컴퓨터에 설치되어 있지 않습니다. 따라서 다음의 경로에서 제공하는 파일을 설치해 줘야 합니다. Microsoft Access Database Engine 2010 Redistributable ; https://www.microsoft.com/en-us/download/details.aspx?displayla..
C# - 하나의 바이너리로 환경에 맞게 32비트/64비트 EXE를 실행하는 방법 http://sysnet.pe.kr/221117637558닷넷 프로그램에서 AnyCPU를 사용하면 32비트/64비트 운영체제에서 그에 맞게 실행됩니다. 그런데 때로는 64비트에서조차도 32비트로 실행하고 싶은 경우가 있습니다. 현실적인 예를 하나 들면, OLEDB 데이터 제공자가 64비트만 설치된 시스템이 있다면 그것을 이용하는 프로그램도 64비트로 실행해야 합니다. 반면 32비트 제공자만 설치된 경우라면 프로그램 역시 32비트로 동작해야 합니다. 이럴 때 사용할 수 있는 트릭으로 sysinternals 도구처럼 64비트 용 실행 파일을 리소스로 포함하고 있다가 적절한 환경에 맞게 실행하는 방법이 있습니다. 간단하게 한번 만들어 볼까요? ^^ 우선 다음의 글에 설명한 내용으로 .csproj 파일의 Ass..
C# - string 배열을 담은 구조체를 직렬화하는 방법 출처: http://sysnet.pe.kr/221115005092C# 구조체나 클래스 할당메모리 크기구하기; http://lab.gamecodi.com/board/zboard.php?no=5096&id=GAMECODILAB_QnA_etc 위의 질문을 정리하면, 다음과 같은 구조체를 크기가 고정된 배열로 만들어 Marshal.SizeOf로 구하고 싶다는 것입니다. [StructLayout(LayoutKind.Sequential, Pack = 1)]public struct DirInfo{ string[] DirNames; string[] Time; string[] size;} 이런 문제는, 여러분들이 Marshal.SizeOf 코드의 개발자라고 생각하고 풀어 보면 됩니다. 첫 번째 문제는 string입니다...
F # SAFE 스택에 대해 배우기 - Suave.io, Azure, Fable, Elmish https://www.hanselman.com/blog/FreeNETTrainingTheVideosFromNETConf2017AreNowAvailable.aspx 지난 달 ASP.NET Core와 F #의 Giraffe 로 구성된 Functional Web을 살펴 보았습니다 . Giraffe는 기능적 관점에서 ASP.NET Core의 파이프 라인을 새로운 방향으로 가져가는 F # 미들웨어입니다. 그러나 기린 만이 선택할 수있는 F # 웹 스택이 아닙니다! Freya, WebSharper가 있으며 SAFE Stack과 함께 매우 흥미롭고 완전한 이야기가 있습니다. SAFE 스택 이 하나가 기능적인 관점 함께 오픈 소스 .NET은 제외하고, 램프 또는 WAMP 또는 기타 약어 스택처럼 오픈 소스 스택이다. ..
무료 .NET 교육 - .NET Conf 2017의 비디오를 사용할 수 있습니다. https://www.hanselman.com/blog/FreeNETTrainingTheVideosFromNETConf2017AreNowAvailable.aspx .NET Conf 2017 이 완료되었으며 훌륭했습니다. 3 일간의 세션이 있었고 그 중 2 일에는 2 개의 트랙이 있었기 때문에 40 시간 이상 무료로 제공되는 무료 비디오 및 교육을 통해 귀하가 체크 아웃하고 공유 할 수 있습니다. 일부 콘텐츠는 Microsoft에서 제공 한 것이지만 동영상 모음은 Skyped로 커뮤니티 및 오픈 소스 프로젝트 멤버가 제작했습니다. 워싱턴 레드몬드에있는 동안 Miguel de Icaza와 Scott Hunter는 스톡홀름의 Devintersection에서 기조 연설을했습니다 . 또한 다수 의 로컬 dotNe..