2014-01-31 6 views
0

Я успешно добавил ссылку на службу в мой проект Visual Studio 2013.Не удается получить доступ к справочной службе

Я не могу, однако, ссылаться на него в коде.

Например, если название проекта «MyProject», а также ссылка на имя службы «thirdpartyasmx», я не могу использовать эту директиву, используя ...

using myproject.thirdpartyasmx 

Я не могу создать экземпляр класса либо непосредственно ...

thirdpartyasmx test = new thirdpartyasmx(); 

Я попытался построить решение, прежде чем пытаться ссылаться на ссылку на обслуживание.

Это не то, что я делаю регулярно, поэтому, боюсь, я пропустил шаг.

+0

Это потому, что справочная служба начинается с численным ... –

+0

скорректированного в примере кода ... – tintyethan

+0

@EthanPelton как насчет оставить реальный код вместо того, чтобы исправлять наш вопрос после того, как каждый комментарий? –

ответ

4

ОБНОВЛЕНО на основе обратной связи OP

при нажатии на кнопку Add Service Reference, нажмите на кнопку Дополнительно в нижнем левом углу диалогового окна:

enter image description here

Установите флажок Использовать типы повторного использования в ссылочных сборках (по умолчанию он проверен).

enter image description here

+0

-1 Почему вы рекомендуете использовать OP ссылку в Интернете? Что было сказано в вопросе, который заставлял вас думать, что это хорошая идея? –

+0

@ Тит - изображение выше должно иметь «типы повторного использования в ссылочных ассамблях», а не «Добавить веб-справочник ...» Тем не менее, +1 и спасибо за помощь. – tintyethan

+0

@JohnSaunders - OP, похоже, использует службу ASMX, и я видел в прошлом, когда людям было лучше повезло с добавлением веб-ссылки для ASMX и Add Service Reference. Почему вы рекомендуете против него (кроме того, что это 2.0 framework)? Я почти никогда не использую служебную ссылку (если я не делаю быстрый прототип) - для полностью разработанных приложений я использую «ChannelFactory ». – Tim

0

Вам не нужно использовать директиву, используя в верхней части класса, вы можете просто создать экземпляр ссылки на службу внутри класса, используя имя, которое вы дали в службе, когда на него ссылаются:

public class MyClassName 
{ 
    protected void SomeMethod() 
    { 
     thirdpartyasmx.ThirdpartyasmxServiceClient service = new thirdpartyasmx.ThirdpartyasmxServiceClient(); 
    } 
} 
Смежные вопросы