Valores de postagem não são definidos devido a caracteres especiais na API da Web

Eu estou tentando fazer um post para o meu serviço de API da web. O ponto é que, ao enviar uma mensagem como

{ message: "it is done" }

trabalhando bem. No entanto, quando eu uso caracteres especiais como çıöpş na minha mensagem, é incapaz de converter meu json para que o objeto post permaneça nulo. O que eu posso fazer? É uma questão de cultura atual ou algo mais. Tentei enviar meu parâmetro post como HtmlEncoded style com a codificação HttpUtility, mas também não funcionou.

public class Animal{

  public string Message {get;set;}
}

Método da API da web

public void DoSomething(Animal a){

}

Cliente

Animal a = new Animal();
a.Message = "öçşistltl";
string postDataString = JsonConvert.SerializeObject(a);        
string URL = "http://localhost/Values/DoSomething";
WebClient client = new WebClient();

client.UploadStringCompleted += client_UploadStringCompleted;
client.Headers["Content-Type"] = "application/json;charset=utf-8";
client.UploadStringAsync(new Uri(URL), "POST",postDataString);

Cumprimentos,

Kemal

questionAnswers(1)

yourAnswerToTheQuestion