Я пишу пример приложения, использующего wcf rest для аутентификации. Вот снимок кода:
Интерфейс обслуживания:
[ServiceContract]
public interface IAuthenticate
{
[OperationContract]
[WebInvoke(BodyStyle=WebMessageBodyStyle.Bare,
Method = "POST", UriTemplate = "/VUser",RequestFormat= WebMessageFormat.Xml ), ]
string CreateUser(VUser user);
}
Класс Datacontract:
[DataContract]
public class VUser
{
public VUser()
{
}
[DataMember]
public string NickName { get; set; }
[DataMember]
public string lName { get; set; }
[DataMember]
public string fName { get; set; }
[DataMember]
public string Email { get; set; }
[DataMember]
public string PhoneNumber { get; set; }
[DataMember]
public string Password { get; set; }
[DataMember]
public string Gender { get; set; }
[DataMember]
public int CountryCode { get; set; }
}
Класс обслуживания:
public class Authenticate : IAuthenticate
{
#region IAuthenticate members
public string CreateUser(Vuser user)
{
//processing xml for response
}
#endregion IAuthenticate
}
код клиента:
Uri baseAddress = new Uri("http://localhost:8000");
using (WebServiceHost host = new WebServiceHost(typeof(Authenticate), baseAddress))
{
host.Open();
Console.WriteLine("Press any key to terminate");
Console.ReadLine();
host.Close();
}
Теперь я использую fiddler для отправки запроса после host.open () и отправки запроса показала:
сообщение http://localhost:8000/Vuser/
Пользователь-агент: Fiddler
Хост: localhost: 8000
длина контента: 233
тип содержимого: текст / xml
и в теле запроса:
Сэнди
р
Сунил
sunil.r
919900101948
зима
мужчина
01
но мне возвращается HTTP / 1.1 400 Bad Request. Мой вопрос заключается в том, правильно ли я передаю класс vuser методу create user или есть какой-либо другой способ отправки vuser.
Пожалуйста, помогите мне.