Also ich versuche diese HttpResponseMessage und es funktioniert gut, solange ich nichts in die Content-Eigenschaft. Aber ich brauche es jetzt irgendwie, um einen JSON im Inhalt der Nachricht zurückzugeben.Die HttpResponseMessage funktioniert nicht, wenn die Content-Property gefüllt ist
Mein Code sieht wie folgt aus:
public HttpResponseMessage GetMemberById()
{
string id = WebOperationContext.Current.IncomingRequest.UriTemplateMatch.QueryParameters["id"];
List<ClubMember> ls = KCBLL.Instance.FindMemberById(id);
HttpResponseMessage MessageRetour = new HttpResponseMessage();
if (ls.Count == 1)
{
JavaScriptSerializer serializer = new JavaScriptSerializer();
string json = serializer.Serialize(ls.First());
MessageRetour.Content = new StringContent(json, Encoding.UTF8);
MessageRetour.StatusCode = HttpStatusCode.OK;
return MessageRetour;
}
}
Die Schnittstelle
[OperationContract]
[WebInvoke(Method = "GET",ResponseFormat = WebMessageFormat.Json,
BodyStyle = WebMessageBodyStyle.Bare,
UriTemplate = "GetMemberById")]
HttpResponseMessage GetMemberById();
Und schließlich die Klasse
[DataContract]
public class ClubMember
{
[DataMember]
public long MemberId { get; set; }
[DataMember]
public string MemberNumber { get; set; }
[DataMember]
public string FirstName { get; set; }
[DataMember]
public string LastName { get; set; }
}
Jede Hilfe
würde geschätzt
Auch versucht, einen Nachrichtentyp zurückgeben und ich bekomme immer noch eine "Konnte keine Antwort bekommen" – user3404416