какой URL для публикации WCF?

какой URL для публикации WCF?

Я создаю такой метод VS 2008, WCF

[WebMethod]
public string TestMethod(string param)
{
    return "param:" + param;
}

так что я иду к

http://localhost:57000/Service1.asmx?op=TestMethod

Но как мне написать об этом?

На тестовой странице написано

HTTP POST

Ниже приведен образец запроса и ответа HTTP POST. Показанные заполнители необходимо заменить фактическими значениями.

POST /Service1.asmx/TestMethod HTTP / 1.1 Хост: localhost Content-Type: application / x-www-form-urlencoded Content-Length: length

param = строка

HTTP / 1.1 200 ОК Content-Type: text / xml; charset = utf-8 Content-Length: length

нить

Я ожидал, что смогу ввести URL-адрес, например, http://localhost:57000/Service1.asmx?op=TestMethod?param=teststring Но это возвращает

Метод TestMethod? Param = teststring не найден в службе Service1.

Какой URL-адрес использовать для передачи параметра в wcf, или это невозможно, или мне нужно сделать что-то еще, чтобы он работал


person Maestro1024    schedule 11.03.2010    source источник


Ответы (1)


Я не могу ответить на ваш конкретный вопрос, но понимаете ли вы, что «WebMethod» - это атрибут из библиотеки .Net 1.1. Мне пришлось поискать это в документации, потому что я никогда раньше этого не видел. Это определенно не WCF.

Из сообщения об ошибке, которое вы получаете, вам нужно поместить параметр в тело POST и установить тип контента на application / x-www-form-urlencoded. Для этого вам понадобится такой инструмент, как fiddler.

Вам действительно стоит изучить некоторые из новых библиотек для работы с веб-сервисами, поскольку то, что вы используете, ДЕЙСТВИТЕЛЬНО старое. Выполните поиск по атрибутам WebGet WebInvoke, чтобы найти новые возможности веб-службы HTTP в WCF.

person Darrel Miller    schedule 11.03.2010
comment
Я использовал VS 2008 и создал новое приложение веб-службы ASP.net. Я все еще пытаюсь понять это. Спасибо за помощь. - person Maestro1024; 11.03.2010
comment
Позвольте мне сделать вам одолжение, прежде чем вы начнете. Если вы делаете быстрый и грязный веб-сервис, загляните в платформу ASP.NET MVC. Если вы смотрите на начало большого веб-проекта, обратите внимание на OpenRasta. Вы меня поблагодарите через 2 года. Если вам абсолютно необходимо использовать WCF по какой-то странной причине, сразу переходите к .Net 4.0. - person Darrel Miller; 11.03.2010