wie nennen wcf restful service von fiddler von JSON-Anfrage?

Ich bin neu in wcf restful-service. Ich konnte Sie nicht finden, das problem war, warum meine wcf restful-Dienst geben, 'bad request'. Ich verwenden .NET 4.0.

Mein service ist:

[OperationContract(Name="Add")]
[WebInvoke(UriTemplate = "test/", Method = "POST",
          ResponseFormat=WebMessageFormat.Json,
          RequestFormat=WebMessageFormat.Json )]
public int Add(Number n1)
{
    res = Convert.ToInt32(n1.Number1) + Convert.ToInt32(n1.Number2);
    return res;
}

Daten sind..

[Serializable]
    public class Number
    {
        public int Number1 { get; set; }
        public int Number2 { get; set; }
    }

Wenn ich Anruf von fiddler ' Rückgabe 'HTTP/1.1 400 Bad Request'

Mein fiddler-request-header ist:

User-Agent: Fiddler
Host: localhost:4217
Content-Type: application/json; charset=utf-8

Und request-body:

{"Number1":"7","Number2":"7"}

Und response-header ist:

HTTP/1.1 400 Bad Request
Server: ASP.NET Development Server/10.0.0.0
Date: Sun, 14 Aug 2011 18:10:21 GMT
X-AspNet-Version: 4.0.30319
Content-Length: 5450
Cache-Control: private
Content-Type: text/html
Connection: Close

Aber wenn ich den Dienst von C# - client-Programm, ist es ok.

Mein client-code ist:

uri = "http://localhost:4217/Service1.svc/";
Number obj = new Number() { Number1 = 7, Number2 = 7 };
using (HttpResponseMessage response = new HttpClient().Post(uri+"test/",
       HttpContentExtensions.CreateDataContract(obj)))
{
    string res = response.Content.ReadAsString();
    return res.ToString();
}

bitte helfen Sie mir........

Dank.

InformationsquelleAutor Ashraf | 2011-08-14
Schreibe einen Kommentar