ASMX Web Service używa niewłaściwego kodowania na żądanie przychodzące

Moja usługa .NET ASMX akceptuje żądania od klienta, nad którym nie mam bezpośredniej kontroli. Wysyła prośbę, która wygląda tak:

<code>POST /Service.asmx HTTP/1.1
Connection: Keep-Alive
Pragma: no-cache
Content-Length: 1382
Content-Type: text/xml
Accept: text/xml
Host: localhost
User-Agent: Borland SOAP 1.1
SOAPAction: "http://domain.com/InsertRecords"

<?xml version="1.0"?>
<SOAP-ENV:Envelope... <v>ÄLMÅ BÄCK</v></SOAP-ENV:Envelope>
</code>

W moim WebMethod ciąg ĘLMÅ BĘCK zostaje zmieniony na ?? LM ?? B ?? CK - typowy bałagan kodowania.

W moich testach odkryłem, że jeśli po prostu poprawię nagłówek typu zawartości, wszystko jest w porządku:

<code>Content-Type: text/xml; charset=utf-8
</code>

Dlaczego .NET wybiera kodowanie inne niż utf-8, gdy jest nieokreślone, i czy jest jakiś sposób, aby zmusić ten ASMX do używania kodowania UTF-8?

questionAnswers(2)

yourAnswerToTheQuestion