-1
私はURIの後ろにパーセントエンコードされたスペース(20%)とURLのときにUri.ToString()
を呼び出す場合、その後、あなたは結果として不正な形式のURLを持っていることに気付きました:URL is URI(反対の文が正しくありませんので.NET Uri.ToString()はURLを破棄しますか?
// result: "http://example.com/test segment"
new Uri("http://example.com/test%20segment").ToString();
)と非エンコードされたスペースのURL is not valid URLのコンテナとしてUriを使用するのは安全ではないようです。
正しい動作ですか? MSDN 1として
おそらく 'のToString()は '親符号化仕様以下'%20'を解析し、それがスペースであるべきであると判断されます。 –
[MSDN](https://msdn.microsoft.com/en-us/library/system.uri.tostring(v = vs.110).aspx)は、通常のスペースで文字列を返す必要があると言います。空白の代わりに '%20'が必要な場合は、.OriginalStringを使用してください。 – Tvde1
あなたが指摘したドキュメントは '.ToString()'は空白を返し、 '.OriginalString'は'%20'を返します。 – wdosanjos