これは私が困惑しています。ロシアのWebサービスにxmlメッセージを送信する必要があります。制限付き(windows-1251)のエンコーディングでxmlの無効な文字をCで停止するには#
public string Serialise(Type t, object o, XmlSerializerNamespaces Namespaces)
{
XmlSerializer serialiser = _serialisers.First(s => s.GetType().FullName.Contains(t.Name));
Windows1251StringWriter myWriter = new Windows1251StringWriter();
serialiser.Serialize(myWriter, o, Namespaces);
return myWriter.ToString();
}
public class Windows1251StringWriter : StringWriter
{
public override Encoding Encoding
{
get { return Encoding.GetEncoding(1251); }
}
}
正常に動作します
が、Webサービスを:XMLは
が、私はさまざまな種類のメッセージに反応するオブジェクトの数を持っていると私は、このようにXMLにそれらを回す窓-1251でエンコードされていますwindows-1251にない文字を送信するとリクエストを拒否します。最新の例では、「左から右への埋め込み」(U + 202A)、「非破壊のハイフン」(U + 2011)と神からの電話番号の送信を試みました。「POP DIRECTIONAL FORMATTING」(U + 202C )。私は入力を制御できません。私は未知の文字を入れたいですか?または削除します。 EncoderFallbackを使いこなそうとしましたが、何も変えていないようです。
私はこれについて間違っていますか?
ブリリアント、それはそれに感謝を行っています。 – dibs487