Контракт после операции WCF, возвращающий 400 неверных запросов

Итак, в основном у меня есть служба wcf, которая должна обрабатывать метод POST, опубликованные данные - это форма с кодировкой URL. это мои подходящие классы

[ServiceContract]
    public interface IMyService
    {
        [OperationContract]
        [WebInvoke(Method = "POST", BodyStyle = WebMessageBodyStyle.Bare)]  
        Stream Check(RequestObject request);
    }
}

public class MyService : IMyService
{
    public Stream Check(RequestObject request)
    {
        // do some stuff;
        return null; // for brevity
    }
}

[DataContract]
    public class RequestObject
    {
        [DataMember(Name = "KEY")]
        public string Key { get; set; }
    }

каждый раз, когда я делаю почтовый запрос на URL-адрес с телом запроса KEY = 1234 (или что-то еще), служба возвращает 400 Bad Request. Я попытался сделать метод обслуживания без параметров, и он работал. То есть вернуть 200 ОК. я что-то здесь делаю не так? при необходимости я могу предоставить web.config


person Dimitri    schedule 23.05.2014    source источник
comment
имеет значение имя? Я имею в виду, что да, для URL, конечно, но имеет ли это значение в данном случае?   -  person Dimitri    schedule 24.05.2014
comment
Ну, приведенный выше код не будет компилироваться из-за характера реализации интерфейса в .NET.   -  person Derek W    schedule 24.05.2014
comment
неважно. Я неправильно написал метод в классе   -  person Dimitri    schedule 24.05.2014


Ответы (1)


Кажется, Службе не нравится ваш формат данных. Попробуйте отправить xml или json.

Вы можете проверить здесь, чтобы увидеть обработку типов формата.

person Mustafa Gündoğar    schedule 23.05.2014
comment
Я пробовал как json, так и xml, в обоих случаях он работал отлично. - person Dimitri; 23.05.2014