WebApi-Transfer-Byte-Array ist null

8

Ich habe einen einfachen Client, der ein Byte-Array sendet:

%Vor%

und ein einfacher Server, der diese Postanforderung erhält:

%Vor%

Das Problem ist, dass ich null als eingehenden Parameter bekomme.

Haben Sie eine Idee, was das Problem sein kann?

    
Guy Dubrovski 29.03.2014, 06:25
quelle

1 Antwort

8

Wenn Sie Parameter in die Aktionsmethode einfügen, sagen Sie implizit, dass einer der Formatierer das CLR-Objekt "serialisieren / deserialisieren" soll. Ich bin mir ziemlich sicher, dass Sie nicht möchten, dass Ihr Byte-Array als XML oder JSON serialisiert wird. Ich nehme an, das gleiche gilt für Ihre String-Antwort.

Für Primitive wie Stream, String und Byte-Arrays tun Sie das einfach,

%Vor%

Da die Content.ReadAsXXX-Methoden leider alle asynchron sind, muss die Action-Methode eine Task zurückgeben. Sie müssen wirklich vermeiden, .Result und .Wait in einer Web-API zu verwenden, die möglicherweise in einer ASP.NET-Pipeline gehostet wird, da Sie Deadlocks verursachen.

    
Darrel Miller 29.03.2014, 15:29
quelle

Tags und Links