2011-12-11 13 views
5

"regular" .NETには、EncodingパラメータをとるUrlEncodeメソッドがあります。 WP7用.NETにこのようなUrlEncodeメソッドはありませんか?Windows Phone 7で特定のエンコーディングでUrlEncodeを使用しますか?

私はスウェーデンにあり、リクエストでISO-8859-1を期待する(ただしUTF-8で応答する)RESTサービスからデータを取得しようとしています。 検索(input=frölunda)を実行してUrlEncodeを使用すると、「欠落」öのために非常に奇妙な結果を返すinput=fr%C3%B6lundaが返されます。 .NET UrlDecodeをiso-8859-1エンコーディングで使用すると、結果として得られる結果が返されるinput=fr%F6lundaが返されます。

独自のUrlEncodeを実装する必要がありますか?

答えて

2

興味深いことに、マイクロソフトがSilverlightの標準に準拠しているようです。 Wikipediaは言う:

[...] UTF-8に従ってバイトに他のすべての文字を変換し、 次にそれらの値をパーセントエンコードしなければなりません。この要件は、2005年1月のRFC39886で に導入されました。この日付以前に導入されたURIスキーム は影響を受けません。

だから、とにかく1つしか許可されていないので、エンコードの選択肢がなくなったようです。

それ以外は、あなただけではありませんhaving this problem。あなたが必要とするHtmlEncodeを取得するには、ホイールとuse code already writtenを再作成しないでください。 (HttpUtility.UrlEncodeの代わりにUri.EscapeUriStringをクライアント側で使用することを推奨しますが、それは判断できません)

+1

実際には、RESTサービスプロバイダが現在の標準に準拠していないという問題があります。私は彼らに一行を落として、彼らが何をすることができるかを見ていきます。 (そして、それが失敗した場合、私はGDataの実装を借用します。)情報をありがとう! – jovnas

+1

そうだね。それらを説得する幸運! –

関連する問題