Vous devez regarder ce que l'appel C# vous renvoie, n'est-ce pas ?
Je ne connais pas C# mais je ne pense pas que le json doive être envoyé dans la variable $_POST mais dans la partie corps de la requête. En PHP vanilla, vous pouvez l'obtenir avec :
file_get_contents('php://input');