Добавление ссылки на службу в портативную библиотеку классов

Я делаю портативную библиотеку классов С#, и я пытаюсь добавить ссылку на веб-службу в свой проект.

Используя VS 2013, я нажимаю правой кнопкой мыши на решении, а в других моих проектах будет опция "Добавить ссылку на службу". Но в моем проекте мобильной библиотеки этот параметр не существует.

Есть ли что-то особенное, чтобы добавить ссылку на службу в мобильную библиотеку, или это невозможно?

Смотрите снимок экрана, нет даже возможности добавить ссылку на службу в мой проект.

enter image description here

Ответы

Ответ 1

У меня была такая же проблема. Сразу после создания нового проекта типа "Blank App" (Xamarin.Forms Shared) в Visual Studio не было ссылки "Добавить ссылку на службу", когда я нажал правой кнопкой мыши на PCL. Что я сделал, так это просто создал другой PCL и вместо этого ссылался на него по умолчанию один (который я удалил позже). Я выбрал проект типа "Class Library (Portable для iOS, Android и Windows)".

введите описание изображения здесь

И затем я перешел к свойствам проекта и невыбранному флажку "Windows Phone 8.1".

введите описание изображения здесь

И ссылка "Добавить ссылку на службу" появилась внезапно.

введите описание изображения здесь

Я использую Visual Stuido 2015 Community Edition (версия 14.0.25123.00 Update 2). Надеюсь, это тоже сработает для вас, ребята.

Ответ 2

Причина, по которой вы не можете добавить ссылку на службу в проекте PCL Xamarin Forms, может быть:

  • Windows Phone 8.1 (не Silverlight). Удалите его, перейдя в свойства проекта PCL и нажмите "Изменить". Возможно, вы не сможете это сделать, прежде чем удалять все пакеты Nuget.
  • При добавлении справочной службы в Visual Studio происходит сбой. Удалите пакет Xamarin Forms nuget и Asp.net SignalR. Это сработало для меня. У меня не было Entity Framework Core, но это может быть необходимо временно удалить.

Ответ 3

Добавить ссылку "System.ServiceModel" и вы можете увидеть "Сервис-ссылку"

Ответ 4

Я также получил ту же ситуацию, когда ссылка на вспомогательную службу отсутствует в контекстном меню. Самый проголосовавший ответ указал мне на правильное направление, но я не создал другого проекта. Просто переименуйте свой файл package.config(возможно, в .old). Это должно привести к тому, что "выбранные цели требуют, чтобы проект был включен в поддержку NuGet 3.0...", когда вы снимите отметку с Windows Phone из целевых показателей.

И да, кажется, что удаление целевого объекта Windows Phone позволяет добавить контекстное меню ссылки на службу в проект PCL.