FrameworkにはUriエンコードに使うメソッドがいくつかあるが、違いを調べてみた。Uri.EscapeDataString(str)RFC2396準拠。16進数は大文字になる。Uri.EscapeUriString(str)EscapeDataStringよりエンコードしない記号が増える。「&+,/:;=?」16進数は大文字。Url全体をまるごと処理することを想定?HttpUtility.UrlEncode(str)EscapeDataStringと違うのは、空白を%20でなく「+」に変える。「~」を%7eに変える。「’」を%27に変える。解析を有効に設定するとRFC3986準拠になるようだが、システム全体が変わってしまうようなので、個別にやるにはRFC3986で増える予約記号「!’*()」を後から置換するのが現実的かも。http://bluestick.jp/tech/index.php/archives/266/trackbackコメントは受け付けていません。