programing

서비스 참조를 추가할 수 없음 - 잠금/읽기 전용

bestprogram 2023. 9. 19. 21:19

서비스 참조를 추가할 수 없음 - 잠금/읽기 전용

서비스 참조를 추가하려고 할 때마다 다음 오류가 발생합니다.

'Servicereference1.reference' 를를(를) 하지 못했습니다.
오류: 현재 파일을 체크아웃할 수 없습니다.파일이 읽기 전용이거나 잠겨 있거나 파일을 수동으로 체크아웃해야 할 수도 있습니다.

프로젝트에서 이미 서비스 레퍼런스를 가지고 있었는데, 어떻게든 고장이 나서 다음과 같은 오류가 발생했습니다.

계약(서비스 이름)을 참조하는 기본 끝점 요소를 찾을 수 없습니다.

web.config와 서비스 참조 구성의 끝점이 모두 동일했습니다(localhost).

또한 '현재 파일을 체크아웃할 수 없음' 오류가 발생하여 해당 참조를 업데이트할 수 없었습니다.

편집: 문제는 이 프로젝트에만 있는 것이 아닙니다.전혀 별개의 새로운 프로젝트를 만들고 거기에 서비스 레퍼런스를 추가하려고 했는데 똑같은 오류가 발생했습니다.

소스 컨트롤 플러그인 "Microsoft Git Provider"를 선택한 경우(WCF 솔루션이 소스 컨트롤에 추가되지 않았습니다!) 서비스 참조를 추가하려고 하면 문제가 발생한다는 것을 발견했습니다.

  1. 소스 제어 플러그인을 없음으로 설정
    • TOOLS > Options > Source Control으로 이동합니다.
  2. 서비스 참조 추가
  3. 소스 제어 플러그인을 원래 값으로 설정합니다.

답변이 완료된 것은 알지만 답변의 다른 모든 것을 시도하기 전에 비주얼 스튜디오를 다시 시작합니다.이것은 방금 저와 WCF반의 다른 4명에게 일어난 일입니다.2012년이 아닌 비주얼 스튜디오 2013에 문제가 있는 것 같습니다.

이미 소스 제어가 관련되어 있지 않다는 것을 확인하셨기 때문에(문제 때문인 것 같습니다) 다음 단계를 시도해 볼 수 있습니다.

  1. 소스 컨트롤이 있는 위치에서 붙여넣기를 수행하는지 확인한 다음 소스 컨트롤 특정 파일을 제거합니다.

  2. 폴더가 잠기지 않았는지, 읽기 전용이 아닌지 확인합니다.그렇다면 폴더에서 읽기 전용을 제거합니다.

  3. 참조를 추가하는 동안 비주얼 스튜디오가 디버깅 모드에 있지 않은지 확인합니다.

  4. 위에서 작동하지 않으면 비주얼 스튜디오를 닫고 다시 시작합니다.

  5. Visual Studio가 "관리자로 실행"으로 시작되었는지 확인합니다.

  6. 마지막으로 위의 모든 것이 작동하지 않으면 기계를 다시 시작해 봅니다.

작동이 되는지 안 되는지 알려주세요.

좀 늦었을 수도 있지만, 같은 문제가 있는 사람이 있으면 관리자로서 VS2013을 실행하여 해결했습니다.

디버그 메뉴로 이동하여 (옵션설정)을 클릭합니다.

debug

Source Control(소스 컨트롤)을 선택합니다.

현재 소스 제어플러그인 드롭다운에서 없음을 선택합니다.

none

그런 다음 확인을 클릭하여 변경 내용을 저장합니다. 이제 서비스 참조를 추가할 수 있습니다.

이상하게도 저는 VS 2019에서 git 소스 컨트롤을 사용하여 이것을 경험하고 있었습니다.서비스 레퍼런스가 포함된 프로젝트를 청소하고 리빌딩하는 것만으로도 이 문제를 해결할 수 있었습니다.

편집: 업데이트하려는 서비스 참조가 이미 있는 경우 해당 참조를 삭제하고 다시 추가해야 할 수 있습니다.

제 문제는 소스 제어와 관련된 것이었지만 쉬운 해결책을 찾았습니다.App.config 파일을 열고 변경한 후 저장합니다.이것은 파일의 잠금을 해제하고 서비스 참조를 추가할 수 있게 해주었습니다.

일부 비주얼 스튜디오 파일이 손상된 것 같습니다.참조를 완전히 삭제한 다음 svcutil {http://{service}/metadataEndpoint}(WCF로 가정함) 또는 (웹 서비스의 경우 wsdl.exe 사용)을 사용하여 참조를 생성한 다음 클라이언트 프록시를 가져와 프로젝트에 넣어 사용하십시오.그게 잘 되는지 확인해 보세요.

기본 소스 컨트롤을 종료하여 참조를 추가하는 것은 끔찍합니다.@스콧G는 위에서 말했고, 일은 합니다.VS를 관리자로 시작하기만 하면 됩니다. 이렇게 하면 사용자 환경을 방해할 필요가 없습니다.VS 2013 UP-5는 여전히 이 문제를 안고 있습니다.

파일이 읽기 전용인지 확인하고, 읽기 전용 특성을 제거한 경우 시각 스튜디오를 다시 시작하고 서비스 참조를 추가합니다.저한테는 이렇게 통했어요.

서비스가 저장된 IIS의 폴더(물리적 파일을 의미함; .svc)가 열려 있지 않거나 파일 관리자에서 선택되어 있지 않은지 확인합니다.제가 할 수 있는 일이지만, 실수를 발견하려고 미칠 뻔하기 전에 말이죠.

좋아요, 저는 여기서 마지막이고 해결책을 찾기 위해 1일을 보냅니다, 제 코드에 아무 문제가 없었고 저는 여러 번 기계를 다시 시작하고 비주얼 스튜디오를 닫으려고 시도했지만 아무 것도 작동하지 않았습니다.저의 경우 비주얼 스튜디오 2019에 업데이트가 있었고 그것이 문제를 일으켰습니다.업데이트 설치 후 서비스 레퍼런스를 업데이트 할 수 있었습니다.이것이 누군가에게 도움이 되기를 바랍니다.

언급URL : https://stackoverflow.com/questions/24148552/unable-to-add-a-service-reference-locked-read-only