성태의 닷넷 이야기
홈 주인
모아 놓은 자료
프로그래밍
질문/답변
사용자 관리
사용자
메뉴
아티클
외부 아티클
유용한 코드
온라인 기능
MathJax 입력기
최근 덧글
[정성태] How can I tell whether two programs...
[정성태] The case of the fail-fast crashes c...
[정성태] Creating Docker multi-arch images f...
[정성태] BinaryFormatter removed from .NET 9...
[정성태] Extending the Windows Shell Progres...
[우광현] 와..... 범위를 잡았으니 클라이언트가 해당 범위를 확인해본다...
[정성태] 딱히, 그것 이상으로 더 설명할 내용이 없습니다. 동적 포...
[정성태] If Windows 3.11 required a 32-bit p...
[정성태] What is a hard error, and what make...
[괴물신인] 질문작성자인데 이 글을 이제봤네요 ㄷㄷ 이 글처럼 타입별로 인...
글쓰기
제목
이름
암호
전자우편
HTML
홈페이지
유형
제니퍼 .NET
닷넷
COM 개체 관련
스크립트
VC++
VS.NET IDE
Windows
Team Foundation Server
디버깅 기술
오류 유형
개발 환경 구성
웹
기타
Linux
Java
DDK
Math
Phone
Graphics
사물인터넷
부모글 보이기/감추기
내용
<div style='display: inline'> <h1 style='font-family: Malgun Gothic, Consolas; font-size: 20pt; color: #006699; text-align: center; font-weight: bold'>C# 8.0 (Preview) 신규 문법을 위한 개발 환경 구성</h1> <p> 이번 글은 다음의 공식 문서 내용을 따릅니다.<br /> <br /> <pre style='margin: 10px 0px 10px 10px; padding: 10px 0px 10px 10px; background-color: #fbedbb; overflow: auto; font-family: Consolas, Verdana;' > What's new in C# 8.0 ; <a target='tab' href='https://learn.microsoft.com/ko-kr/dotnet/csharp/whats-new/csharp-8'>https://learn.microsoft.com/ko-kr/dotnet/csharp/whats-new/csharp-8</a> </pre> <br /> <hr style='width: 50%' /><br /> <br /> 앞으로도 그럴지는 알 수 없지만, 현재로써는 일단 C# 8.0 컴파일 기능은 비주얼 스튜디오 2019에서 .NET Core 3.0 프로젝트를 대상으로만 활성화됩니다. 따라서 무조건 3.0 버전을 설치해야 합니다. (아직은 Preview 버전이기 때문에 설정 상 귀찮은 부분들이 좀 있습니다.)<br /> <br /> 우선, 오늘 기준으로 .NET Core 3.0의 최신 버전인 Preview 9을,<br /> <br /> <pre style='margin: 10px 0px 10px 10px; padding: 10px 0px 10px 10px; background-color: #fbedbb; overflow: auto; font-family: Consolas, Verdana;' > Download .NET SDKs for Visual Studio ; <a target='tab' href='https://dotnet.microsoft.com/download/visual-studio-sdks?utm_source=getdotnetsdk'>https://dotnet.microsoft.com/download/visual-studio-sdks?utm_source=getdotnetsdk</a> </pre> <br /> 위의 링크를 통해 x64와 x86을 함께 받아 설치합니다.<br /> <br /> <pre style='margin: 10px 0px 10px 10px; padding: 10px 0px 10px 10px; background-color: #fbedbb; overflow: auto; font-family: Consolas, Verdana;' > .NET Core Installer - x64 ; <a target='tab' href='https://dotnet.microsoft.com/download/thank-you/dotnet-sdk-3.0.100-preview9-windows-x64-installer'>https://dotnet.microsoft.com/download/thank-you/dotnet-sdk-3.0.100-preview9-windows-x64-installer</a> .NET Core Installer - x86 ; <a target='tab' href='https://dotnet.microsoft.com/download/thank-you/dotnet-sdk-3.0.100-preview9-windows-x86-installer'>https://dotnet.microsoft.com/download/thank-you/dotnet-sdk-3.0.100-preview9-windows-x86-installer</a> </pre> <br /> 그럼, 아래의 4가지 구성요소와 그 버전을 확인할 수 있습니다.<br /> <br /> <ul> <li>.NET Core SDK 3.0.100-preview9-014004</li> <li>.NET Core Runtime 3.0.0-preview9-19423-09</li> <li>ASP.NET Core Runtime 3.0.0-preview9, 19424.4</li> <li>.NET Core Windows Desktop Runtime 3.0.0-preview9-19423-09</li> </ul> <br /> 그다음, 이를 Visual Studio 2019에서 인식하도록 Tools / Options / Environment / Preview Features <a target='tab' href='https://www.sysnet.pe.kr/2/0/11937'>"Use previews of the .NET Core SDK"</a> 옵션을 켭니다.<br /> <br /> <img onclick='toggle_img(this)' class='imgView' alt='use_cs8_1.png' src='/SysWebRes/bbs/use_cs8_1.png' /><br /> <br /> <hr style='width: 50%' /><br /> <br /> 이제 비주얼 스튜디오 2019를 실행하고, 실습을 위해 .NET Core 프로젝트를 생성한 다음, 속성 창에서 "Target framework"를 ".NET Core 3.0"으로 맞추면 예전에 설명했던 글과 같이,<br /> <br /> <pre style='margin: 10px 0px 10px 10px; padding: 10px 0px 10px 10px; background-color: #fbedbb; overflow: auto; font-family: Consolas, Verdana;' > 비주얼 스튜디오 2017 버전 15.3.1 - C# 7.1 공개 ; <a target='tab' href='http://www.sysnet.pe.kr/2/0/11272'>http://www.sysnet.pe.kr/2/0/11272</a> </pre> <br /> "Build" / "Advanced..." 버튼을 눌러 나오는 창의 "Language version" 설정에서 "C# 8.0 (beta)" 항목이 제공됩니다. 여기까지 설정을 해줘야 이후 C# 8.0 신규 문법을 테스트할 수 있습니다.<br /> <br /> <hr style='width: 50%' /><br /> <br /> 참고로, 마이크로소프트는 github를 통해 C# 8 신규 문법을 사용한 예제 코드 프로젝트를 제공합니다.<br /> <br /> <pre style='margin: 10px 0px 10px 10px; padding: 10px 0px 10px 10px; background-color: #fbedbb; overflow: auto; font-family: Consolas, Verdana;' > c:\temp\cs8> <span style='color: blue; font-weight: bold'>git clone https://github.com/dotnet/try-samples.git</span> </pre> <br /> 이를 테스트하기 위해 "try" 도구를 설치하는데,<br /> <br /> <pre style='margin: 10px 0px 10px 10px; padding: 10px 0px 10px 10px; background-color: #fbedbb; overflow: auto; font-family: Consolas, Verdana;' > C:\temp> <span style='color: blue; font-weight: bold'>dotnet tool install --global dotnet-try</span> You can invoke the tool using the following command: dotnet-try Tool 'dotnet-try' (version '1.0.19317.5') was successfully installed. </pre> <br /> 만약 기존에 try 도구를 설치했다면 다음의 명령어로 업데이트만 해줍니다.<br /> <br /> <pre style='margin: 10px 0px 10px 10px; padding: 10px 0px 10px 10px; background-color: #fbedbb; overflow: auto; font-family: Consolas, Verdana;' > dotnet tool update -g dotnet-try </pre> <br /> 끝입니다. 이제 명령행에서 "dotnet try"를 실행하면,<br /> <br /> <pre style='margin: 10px 0px 10px 10px; padding: 10px 0px 10px 10px; background-color: #fbedbb; overflow: auto; font-family: Consolas, Verdana;' > C:\temp\cs8> <span style='color: blue; font-weight: bold'>dotnet try</span> Hosting environment: Production Content root path: C:\temp\cs8 Now listening on: https://localhost:1401 Application started. Press Ctrl+C to shut down. </pre> <br /> 웹 브라우저가 실행되면서 예제 코드를 로컬 웹 상에서 실행할 수 있는 환경을 (비주얼 스튜디오 없이) 경험할 수 있습니다.<br /> <br /> <hr style='width: 50%' /><br /> <br /> 마지막으로, 비주얼 스튜디오 없이 명령행으로 최신 8.0 문법을 테스트하고 싶다면 지난 글을 참고합니다.<br /> <br /> <pre style='margin: 10px 0px 10px 10px; padding: 10px 0px 10px 10px; background-color: #fbedbb; overflow: auto; font-family: Consolas, Verdana;' > Visual Studio 없이 최신 C# (8.0) 컴파일러를 사용하는 방법 ; <a target='tab' href='http://www.sysnet.pe.kr/2/0/11834'>http://www.sysnet.pe.kr/2/0/11834</a> </pre> <br /> 오늘 기준으로는 다음의 명령어로 설치할 수 있는데,<br /> <br /> <pre style='margin: 10px 0px 10px 10px; padding: 10px 0px 10px 10px; background-color: #fbedbb; overflow: auto; font-family: Consolas, Verdana;' > nuget install Microsoft.Net.Compilers -Version 3.4.0-beta2-19462-08 -Source https://dotnet.myget.org/F/roslyn/api/v3/index.json </pre> <br /> 버전 기호에 "*beta*"가 빠진 정식 버전 명칭으로 바뀐 상태입니다.<br /> <br /> <pre style='margin: 10px 0px 10px 10px; padding: 10px 0px 10px 10px; background-color: #fbedbb; overflow: auto; font-family: Consolas, Verdana;' > C:\git_clone\cs8\Microsoft.Net.Compilers.3.4.0-beta2-19462-08\tools> <span style='color: blue; font-weight: bold'>csc -langversion:?</span> Supported language versions: default 1 2 3 4 5 6 7.0 7.1 7.2 7.3 <span style='color: blue; font-weight: bold'>8.0 (default)</span> latestmajor preview latest </pre> </p><br /> <br /><hr /><span style='color: Maroon'>[이 글에 대해서 여러분들과 의견을 공유하고 싶습니다. 틀리거나 미흡한 부분 또는 의문 사항이 있으시면 언제든 댓글 남겨주십시오.]</span> </div>
첨부파일
스팸 방지용 인증 번호
1210
(왼쪽의 숫자를 입력해야 합니다.)