Не удается добавить ссылку на сервис – доступ только для чтения/заблокировано
У меня возникла проблема при добавлении служебной ссылки в проект. Каждый раз, когда я пытаюсь добавить ссылку, появляется следующая ошибка:
Не удалось добавить служебную ссылку 'Servicereference1.reference'
Ошибка: Невозможно оформить текущий файл. Файл может быть доступен только для чтения или заблокирован, или вам может потребоваться вручную оформить файл.
Ранее в проекте уже была служебная ссылка, но она перестала работать и выдала ошибку:
Не удалось найти элемент конечной точки по умолчанию, который ссылается на контракт (имя_сервиса).
Конечные точки в файлах web.config и конфигурации служебной ссылки были одинаковыми (localhost).
Кроме того, я не смог обновить эту ссылку, так как получал ту же ошибку «невозможно оформить текущий файл».
ИЗМЕНЕНИЕ: Проблема проявляется не только в этом проекте. Я попробовал создать новый, совершенно отдельный проект и добавить в него служебную ссылку, но получил ту же ошибку.
5 ответ(ов)
У меня была такая же ошибка. Я обнаружил, что возникают проблемы, если выбран плагин контроля версий "Microsoft Git provider" (при этом моё WCF-решение не было добавлено под контроль версий!) и вы пытаетесь добавить ссылку на сервис.
- Установите плагин контроля версий в значение "Нет":
- перейдите в Инструменты > Параметры > Контроль версий.
- Добавьте ссылку на сервис.
- Верните плагин контроля версий к исходному значению.
Надеюсь, это поможет!
Я знаю, что на этот вопрос уже отвечали, но прежде чем пробовать все остальные решения из ответов, попробуйте перезапустить Visual Studio. У меня только что была такая же проблема, как у еще четырех человек в моем классе по WCF. Похоже, это связано с Visual Studio 2013, а не с 2012.
Как вы уже отметили, контроль версий не используется (что, на мой взгляд, может быть причиной проблемы), вы можете попробовать следующие шаги:
- Убедитесь, что если вы копировали файлы из места, где использовался контроль версий, вы удалили все специфичные для контроля версий файлы.
- Проверьте, что папка не заблокирована и не имеет атрибута "Только для чтения". Если это так, уберите атрибут "Только для чтения" с папки.
- Убедитесь, что Visual Studio не находится в режиме отладки во время добавления ссылок.
- Если вышеперечисленное не сработало, закройте Visual Studio и перезапустите ее.
- Убедитесь, что Visual Studio запущена с правами администратора.
- В конечном итоге, если ничего из вышеперечисленного не помогло, попробуйте перезагрузить машину.
Сообщите, сработало ли это или нет.
Возможно, уже поздно, но если кто-то сталкивается с похожей проблемой, я решил её, запустив VS2013 от имени администратора.
У меня была похожая проблема в VS 2019 с использованием git для контроля версий. Я смог разрешить это, просто очистив и собрав проект, содержащий ссылку на сервис...
EDIT: Если у вас уже есть ссылка на сервис, которую вы пытаетесь обновить, возможно, вам придется удалить её и добавить заново.
Как установить заголовок Content-Type для запроса HttpClient?
Таймаут при использовании Linq-to-SQL
Обрезка строки запроса и возврат чистого URL в C# ASP.NET
Как запустить модульные тесты на платформе x64?
"Ошибка при выполнении криптографической операции при расшифровке cookie Forms"