실행 중 코드 를 편집 하 는.NET 열 재 부팅 방법

5758 단어 .NET열중재
오늘,우 리 는 당신 에 게 Visual Studio 2019 중 16.11(미리 보기 판 1)중의.NET 핫 리 셋(.NET 6(미리 보기 판 4)중의 dotnet watch 명령 행 도 구 를 통 해)을 소개 하 게 되 어 매우 기 쁩 니 다.이 글 의 나머지 부분 에서 우 리 는.NET 핫 로드 가 무엇 인지,당신 이 어떻게 이 특성 을 사용 하기 시 작 했 는 지,우 리 는 미래 계획 개선 에 대한 구상,그리고 현재 어떤 편집 과 언어 를 지원 하 는 지 에 대한 명확 성 을 소개 할 것 입 니 다.
오늘,우 리 는 당신 에 게 Visual Studio 2019 중 16.11(미리 보기 판 1)중의.NET 핫 리 셋(.NET 6(미리 보기 판 4)중의 dotnet watch 명령 행 도 구 를 통 해)을 소개 하 게 되 어 매우 기 쁩 니 다.이 글 의 나머지 부분 에서 우 리 는.NET 핫 로드 가 무엇 인지,당신 이 어떻게 이 특성 을 사용 하기 시 작 했 는 지,우 리 는 미래 계획 개선 에 대한 구상,그리고 현재 어떤 편집 과 언어 를 지원 하 는 지 에 대한 명확 성 을 소개 할 것 입 니 다.
.NET 핫 로드 란 무엇 입 니까?
열 과부하 를 사용 하면 프로그램 이 실 행 될 때 프로그램 이 관리 하 는 소스 코드 를 수정 할 수 있 습 니 다.수 동 으로 중단 하거나 중단 점 을 명중 시 킬 필요 가 없습니다.프로그램 이 실 행 될 때 지원 되 는 변경 사항 을 변경 하고 새로운 VisualStudio 체험 에서'apply code changes'단 추 를 누 르 면 편집 을 적용 합 니 다.

핫 리 셋 은 WPF,Windows Forms,.NET MAUI 미리 보기,ASP.NET Core,Console,WinUI 3 등 이미 존재 하고 다가 올 프로젝트 유형 을 지원 합 니 다.이러한 지원 은 매우 광범 위 하 며.NET Framework 나 CoreCLR 이 실 행 될 때 구동 되 는 모든 항목 을 지원 합 니 다.(This support is very broad with the core experience working with any project that is powered by .NET Framework or CoreCLR runtimes.)
열 재 부팅 을 통 해 프로그램 을 어떻게 시작 하 든 사용 할 수 있 도록 하 는 것 이 목표 입 니 다.오늘 발 표를 통 해 완전히 통 합 된 Visual Studio 디 버 거 체험 이나 dotnet watch 명령 행 도 구 를 통 해 이 체험 을 사용 할 수 있 습 니 다.잠시 후 버 전에 더 많은 옵션 이 있 을 것 입 니 다.
시작 하 다
Visual Studio 를 사용 하 는 최신 미리 보기 버 전 을 선택 할 수도 있 고.NET 6 미리 보기 4 를 선택 할 수도 있 습 니 다.다음 과 같이 소개 합 니 다.
Visual Studio
Visual Studio 에서 디 버 거 를 사용 할 때 다시 불 러 오기 시도:
  • Visual Studio 2019 16.11 미리보기 판 1 을 다운로드 하고 설치 합 니 다
  • 지원 하 는 항목 형식 을 엽 니 다.예 를 들 어 WPF 프로그램.
  • F5 를 통 해 추가 디 버 거 프로그램 을 시작 합 니 다(디 버 거 설정 에서"enable native code debugging"을 사용 하지 않도록 합 니 다)
  • 4.567917.C\#코드 파일 을 엽 니 다.그 중에서 일부 코드 는 실행 중인 프로그램의 사용자 인터페이스 를 통 해 다시 실행 할 수 있 습 니 다(예 를 들 어 하나의 단추 의 논리 코드 나 ViewModel 의 command).또는 Timer 간격 으로 무언 가 를 터치 한 다음 에 코드 를 변경 할 수 있 습 니 다
  • Visual Studio 의 도구 모음 에 있 는 새로운'응용 코드 변경(ALT-F10)단추'(Continue 단추 옆)를 사용 하여 코드 변경 을 적용 합 니 다.Visual Studio 를 사용 할 때 파일 을 저장 할 필요 가 없습니다.코드 를 빠르게 변경 하고 디 버 깅 을 계속 하 는 유연성 을 줍 니 다
  • 변경 사항 이 지원 된다 면 프로그램 은 현재 새 논 리 를 사용 하여 실 행 될 때 수정 할 것 입 니 다.또한 다음 작업 이나 타이머 와 유사 한 트리거 코드 를 통 해 업 데 이 트 된 코드 를 다시 실행 할 때 프로그램의 행동 변경 사항 을 봐 야 합 니 다.
    정지점,편집,계속,XAML 열 과부하 등 다른 디 버 거 기능 도 계속 사용 할 수 있 습 니 다.현재 익숙 한 모든 것 은.NET 핫 로드 와 완전히 병행 해 야 합 니 다.만약 당신 에 게 도움 이 되 지 않 는 것 이 있다 면,우리 에 게 알려 주세요!
    CLI
    dotnet watch 를 사용 하여 명령 행 에서 프로그램 을 시작 할 때 열 로드 를 사용 합 니 다:
    .NET 6 미리 보기 4 를 설치 합 니 다
  • ASP.NET Core 프로젝트 를.NET 6 으로 업데이트 합 니 다
  • launchSettings.json 에"hotReloadProfile":"aspnetcore"속성 을 추가 합 니 다
  • 
    {
      "profiles": {
        "dotnet": {
          "commandName": "Project",
          "hotReloadProfile": "aspnetcore"
        }
      }
    }
  • dotnet watch 를 사용 하여 항목 을 실행 하고 출력 을 봅 니 다.열 과부하 가 사용 되 었 음 을 표시 해 야 합 니 다
  • 4.567917.응용 프로그램 위탁 관리 코드 에 대해 열 과부하 지원 코드 를 변경 하고 파일 을 저장 하여 응용 합 니 다Visual Studio 의 체험 처럼 새로운 논 리 는 이제 응용 되 어야 합 니 다.다음 에 업 데 이 트 된 코드 가 다시 실 행 될 때 응용 프로그램의 행동 변 화 를 볼 수 있 을 것 입 니 다.
    이러한 방식 으로"Blazorwasm"핫 리 셋 프로필 을 수정 할 수 있 습 니 다.Blazor WebAssembly 프로젝트 에서 위 와 유사 한 절 차 를 사용 할 수 있 습 니 다.윈도 우즈 Forms 나 CoreCLR 이 지원 하 는 다른 항목 에서 도 시도 할 수 있 습 니 다.Properties 폴 더 에 위의 예제 내용 을 가 진 launchSettings.json 이라는 파일 을 수 동 으로 추가 하면 됩 니 다.
    이 기능 은 여전히 개발 중 입 니 다.우 리 는 미래의 개선 을 추적 하고 있 습 니 다.dotnet watch 를 사용 하여 모든 유형의.NET Core 응용 프로그램 을 다시 불 러 오기 쉽 고 launchSettings.json 파일 이 필요 하지 않 습 니 다.이것 은 현재 버 전에 서 제한 되 어 있 습 니 다.
    Visual Studio 2022 와.NET 6 에서 최 적 화 될 것 입 니 다.
    오늘 발 표 는 우리 가.NET 개발 자 에 게 제공 하 는 핫 리 셋 미리보기 판 일 뿐이다..NET 6 미리보기 판 과 Visual Studio 2019 에 서 는 일부 기능 만 사용 할 수 있다.이 기능 의 모든 기능 은.NET 6(및 미래 버 전의.NET)및 Visual Studio 2022 에서 프레임 워 크 와 도구 모음 으로 가장 완전한 기능 과 최상의 경험 을 제공한다.
    우리 가 미래의 미리 보기 판 과 최종 버 전에 서 어떤 특성 을 제공 할 계획 인지 대충 알 수 있 도록 다음 과 같은 예 가 있 습 니 다.
  • NET Multi-platform App UI(.NET MAUI):.NET 6 Preview 4 를 통 해 개발 자가.NET MAUI 애플 리 케 이 션 을 구축 할 때 현재.NET 핫 리 로드 를 사용 하여 WinUI 3 에 대한 프로젝트 를 수행 할 수 있 습 니 다.미래의 버 전에 서 우 리 는 iOS,Android,Mac Catalyst 장면 에.NET 핫 로드 지원 을 도입 할 것 이다
  • Razor Pages:미래 버 전에 서 핫 리 셋 과 편집 을 지원 하고 계속(Edit and Continue,EnC).NET 6 또는 더 높 은 버 전의 사이트 나 Blazor 응용 편집 Razor 를 사용 합 니 다
  • 4.567917.디 버 거 가 필요 하지 않 습 니 다.Visual Studio 2022 의 미래 버 전에 서 디 버 거 가 필요 하지 않 고 열 로 딩 을 사용 하 는 지원 을 추가 하려 고 노력 하고 있 습 니 다.이것 은 개발 자가 CTRL-F5 를 사용 하여 프로그램 을 시작 할 수 있 고 열 로 딩 을 사용 하여 실행 중인 프로그램 을 수정 할 수 있 음 을 의미 합 니 다
  • 지원 되 지 않 는 변경 사항 을 줄 입 니 다.Visual Studio 2022 와.NET 6+의 미래 버 전에 서 저 희 는 여러 팀 을 뛰 어 넘 어 작업 을 하여 운영 할 때 지원 되 지 않 는 편집 수량 을 줄 일 계획 입 니 다
  • 최적화 프레임 워 크 는 열 재 로 딩 을 더욱 잘 지원 합 니 다..NET 6 에서 우 리 는 열 재 로 딩 을 어떻게 개선 하 는 지 연구 하고 있 습 니 다.ASP.NET Core,.NET MAUI 와 다른 프레임 워 크 에 대한 조정 과 최 적 화 를 포함 하여 열 을 더 많은 상황 에서 더욱 유용 하 게 할 것 입 니 다
  • 이상 은 우리 의 현재 계획 입 니 다.계획 은 고객 의 피드백 과 시간표 에 따라 변 경 될 수 있 음 을 주의 하 십시오.
    지원/지원 되 지 않 는 변경 사항 및 언어
    .NET 열 리 셋 을 어떻게 사용 하 든 실행 할 때 지원 되 지 않 는 변경 사항 이 있 습 니 다.거 친 편집 대화 상 자 를 알려 주 고 프로그램 을 다시 시작 하 라 고 요구 할 수 있 습 니 다.우 리 는 어떤 편집 을 지원 하 는 지 상세 하 게 설명 하기 위해 서 이 기능 과 문서 에 주력 하고 있다.현재 기 존 편집 을 보고 계속(EnC)목록 의 등가 기능 을 확인 합 니 다.열 과부하 가 EnC 에 의 해 작 동 되 기 때문에 이 새로운 특성 을 잘 이해 하 는 데 좋 은 출발점 을 제공 할 것 입 니 다.구체 적 인 내용 은 다음 을 참조 하 십시오:EnC 문서.
    또한 위의 예 는 C\#를 특별히 언급 한 것 이지 만 Visual Studio 디 버 거 에서 실 행 될 때 도 다양한 상황 에서 Visual Basic 을 지원 합 니 다.F\#현재.NET 6 에 서 는 지원 되 지 않 지만 미래 버 전에 서 고객 의 피드백 에 따라 지원 할 계획 입 니 다.
    실 행 될 때 코드 를 편집 하 는.NET 핫 리 셋 의 조작 방법 에 관 한 이 글 은 여기까지 소개 되 었 습 니 다.더 많은 관련.NET 핫 리 셋 내용 은 우리 의 이전 글 을 검색 하거나 아래 의 관련 글 을 계속 조회 하 시기 바 랍 니 다.앞으로 많은 응원 부 탁 드 리 겠 습 니 다!

    좋은 웹페이지 즐겨찾기