powered by simpleCommunicator - 2.0.59     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / WebService для заданного SOAP пакета
5 сообщений из 5, страница 1 из 1
WebService для заданного SOAP пакета
    #38057061
Starlex
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Привет!

Есть некий пакет в формате SOAP такого вида
Код: xml
1.
2.
3.
4.
5.
@"<?xml version=""1.0"" encoding=""utf-8""?><soapenv:Envelope xmlns:soapenv=""http://schemas.xmlsoap.org/soap/envelope/"" xmlns:ws=""http://www.paysecure.ru/ws/""><soapenv:Body>
<ws:PushPaymentResult>
<merchant_id>500001</merchant_id>
<ordernumber>298</ordernumber>
</ws:PushPaymentResult></soapenv:Body></soapenv:Envelope>"



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

Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
[WebService(Namespace = "http://www.paysecure.ru/ws/")]
    [WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
    [System.ComponentModel.ToolboxItem(false)]
    public class Payment : System.Web.Services.WebService
    {
        [WebMethod]
        public XmlDocument PushPaymentResult(string merchant_id, string ordernumber)
        {
                return ResultManager.Proccess(merchant_id, ordernumber);
        }
    }



Проблема в том, что оба параметра - merchant_id и ordernumber приходят как null. С моей точки зрения, странность этого пакета в том, что параметры там вне пространства ws. Если, например, пакет был бы таким
Код: xml
1.
2.
3.
4.
5.
@"<?xml version=""1.0"" encoding=""utf-8""?><soapenv:Envelope xmlns:soapenv=""http://schemas.xmlsoap.org/soap/envelope/"" xmlns:ws=""http://www.paysecure.ru/ws/""><soapenv:Body>
<ws:PushPaymentResult>
<ws:merchant_id>500001</ws:merchant_id>
<ws:ordernumber>298</ws:ordernumber>
</ws:PushPaymentResult></soapenv:Body></soapenv:Envelope>"


то все работало бы нормально. Но к сожалению, он не такой :) Можно ли как-то решить эту проблему?
Может кто сталкивался с Ассистом, делал сервис для приема их пакетов результатов платежей...
...
Рейтинг: 0 / 0
WebService для заданного SOAP пакета
    #38057643
Starlex
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Никаких мыслей нет? Поиски в гугле приводят к моему исходному сообщению, круг замкнулся :) Или голословно утверждается , что параметры отлично работают и без namespace

The method tag in turn encapsulates any number of parameter tags such as the <param1 ... > tag in the request envelope. Parameter tag names can be anything at all and are typically autogenerated and have no namespace.

Но как-то это не очень получается, если натравить сервис на namespace, то доступно только то, что входит в это namespace.
...
Рейтинг: 0 / 0
WebService для заданного SOAP пакета
    #38059961
Starlex
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
По другому задал вопрос здесь
...
Рейтинг: 0 / 0
WebService для заданного SOAP пакета
    #38059967
Starlex
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
сорри здесь
...
Рейтинг: 0 / 0
WebService для заданного SOAP пакета
    #38062002
Starlex
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Странно, что никто не ответил, наверное, слишком элементарный вопрос. Пока поставил в каждом свойстве в классе, который передается как параметр, пустое namespace
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
[System.SerializableAttribute()]
    [XmlRoot(ElementName = "PushPaymentResult", Namespace = "http://www.paysecure.ru/ws/")]
    public class PushPaymentResult
    {
        [XmlElement(Namespace = "")]
        public string merchant_id { get; set; }
        [XmlElement(Namespace = "")]
        public string ordernumber { get; set; }
     }



Если передавать параметры не как объект, а каждый в отдельности, то можно так

Код: c#
1.
2.
3.
4.
5.
6.
7.
[WebMethod()]
        public XmlDocument PushPaymentResult(
            [XmlElementAttribute(Namespace = "")]string merchant_id,
            [XmlElementAttribute(Namespace = "")]string ordernumber)
{
....
}
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / WebService для заданного SOAP пакета
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]