Obtention de l'erreur de lancement suivante lors de l'appel d'un service Web. Avoir googlé sans aucun résultat autre que les gens posant la même question..NET Webservice = La paire de substitution n'est pas valide
Server was unable to process request. ---> The surrogate pair (0xD860, 0x27) is invalid. A high surrogate character (0xD800 - 0xDBFF) must always be paired with a low surrogate character (0xDC00 - 0xDFFF)."}
System.Exception {System.Web.Services.Protocols.SoapException
Le service Web retourne une série de champs de texte simple à partir d'une vue en exécutant la vue et l'ouverture d'un ensemble de données et la lecture des données et en le retournant XML formaté.
EDIT
a pu résoudre ce en utilisant l'expression rationnelle suivant laquelle des bandes les mauvais caractères qui se trouvaient personnages MSWord/Excel
string re = @"[^\x09\x0A\x0D\x20-\xD7FF\xE000-\xFFFD\x10000-x10FFFF]";
return Regex.Replace(text, re, string.Empty);
Intéressant. Comment sais-tu cela? –
Il s'avère qu'il s'agissait de mauvais caractères, comme vous le dites provoqué par la copie entre MSWord/Excel et l'insertion dans la base de données. J'ai purgé les mauvais caractères en utilisant ce qui suit, string re = @ "[^ \ x09 \ x0A \ x0D \ x20- \ xD7FF \ xE000- \ xFFFD \ x10000-x10FFFF]"; return Regex.Replace (text, re, string.Empty); –