WPF MVVM 개발 시 잦은 VS 느려짐, 다운 문제

안녕하세요
윈폼만 쓰다가 최근 wpf 를 사용해서 윈도우 어플 개발을 해보고 있는데
개발 중에 vs가 뻗는 경우, 느려지는 경우, 프로그램 실행/종료 시 vs가 응답없음이 길어지는 경우 등등
문제가 생기는데요

윈폼 개발 시 폼 생성자에 있는 코드 때문에 디자이너가 이상하다던지 그런 경험이 있어서
이것도 제가 뭔가 개발하면서 이상한 짓을 한 것 같은데 알 수가 없네요

지금도 멈춘 김에 쓰는데 vs를 클릭해보면 아래와 같이 창이 뜨네요 취소는 안되구요
“Microsoft.Xaml.Behaviors.dll에 대한 기호를 {경로}에서 로드하는 중…
취소하면 추가 기호 로드가 취소됩니다.”

환경은 mvvm관련 community mvvm toolkit정도만 nuget으로 받아서 하는 중입니다

아 혹시 확장프로그램도 문제가 있을까요?
Viasfora(brace색구분),
VSColorOutput(출력View에 색구분),
Code alignment(code align도우미),
Match Margin(선택 텍스트 스크롤바에 표시)
를 사용하고 있습니다

의심되는 부분이나 경험 있으신 분 공유부탁드립니다.

감사합니다.

좋아요 2

말씀하신 확장들은 사용하고 있는 게 없어서 확인이 어렵습니다.
하나씩 직접 제거해가시면서 테스트해보시는 게 어떨까요?

또한 생성자에 의심되는 코드가 있다고 하시는데 코드가 없어서 예측이 안되고, 저의 경우엔 MVVM으로 개발하는데 VS가 죽는 경우는 없었습니다.

좋아요 2

보통 발생하는 현상은 확실히 아닌가 보네요
우선 확장기능부터 다 지우고 테스트해봐야될것같아요
감사합니다

좋아요 2

예전에 xaml 파일에 상용 컨트롤을 사용하다가 프리즈 현상을 겪었던 것 같기는 한데 기억이 가물가물하네요.
여러 가능성을 열어 두고, 다양한 시도를 해 보시면 이슈가 해결되지 않을까 싶어 공유 드려요.

영향 받는 확장 점검

확장 전체를 disable 한 상태에서 하나씩 enable하여 영향이 있는 확장을 걸러내 보시기 바랍니다.

Visual studio 최적화 권장 사항 적용

Visual Studio의 성능을 최적화 하기 위한 가이드를 확인하여 옵션을 적용해 봅니다.

디자인 타임 최적화

하나의 xaml 파일에 많은 컨트롤과 함께 데이터가 바인딩 되어 있으면 xaml designer에 부담을 줘 느려지거나 프리즈 현상을 겪을 수 있습니다.
큰 xaml 파일을 유저 컨트롤로 나누어 정의하고, 디자인 타임 바인딩 데이터를 최소화 하도록 설정합니다.

xaml designer 성능 추적

perfview를 활용하여 생성된 etl 로그 파일을 통해 visual studio의 성능을 진단하거나 Microsoft Q&A에 제보해보시면 답변을 얻으실 수 있지 않을까 싶네요.

perfview 다운로드

perfview 사용 영상

etl 파일 로깅하기

  1. visual studio를 실행하고, xaml 디자이너가 실행된 상태여야 합니다.
  2. PerfView를 실행합니다.
  3. PerfView의 Start Collection 버튼으로 로깅을 시작합니다.
  4. Visual studio 멈춤 현상을 재현합니다.
  5. PerfView의 Stop Collection 버튼으로 로깅을 종료하면 .etl 파일이 생성됩니다.
  6. .etl 파일을 Collect → Merge 명령으로 병합합니다.

참조

좋아요 7

와 상세한 답변감사합니다
어제부터 확장을 다 끄고 사용 중인데 느려지는 증상이 안나타나서
확장들 중 유독 wpf개발환경이랑 뭔가 안맞는게 있는 것 같아요
이제 하나하나 살려서 확인해보려고 합니다

감사합니다

좋아요 5

저같은 경우, ReSharper나 ResourceManager를 설치하면 느려지거나 다운되는 경우가 생기더군요.

좋아요 2

개인적으로 ReSharper 성애자인데 언젠가부터 Visual Studio에서 쓰기에 많이 느려진거 같아요 :sob:
Rider로 넘어가고 있습니다~!

좋아요 2