戦場のプログラマー

名前は誰も知らない。

.NET Framework4でHttpUtility.UrlEncodeが使えない件

VisualStudio 2010で.NET Framework 4で以下のコードを動かそうとしたらエラーがでた。

// 文字コードを指定する
System.Text.Encoding enc = System.Text.Encoding.GetEncoding("shift_jis");
// POST送信する文字列を作成
string postData = "inlang=ja&word=" + System.Web.HttpUtility.UrlEncode("インターネット", enc);

アセンブリ参照が見つからないらしいんだけど、参照を追加しようとしてもそれらしいアセンブリが見つからない。

によるともはや.NET Framework4環境では HttpUtility は無理して使うようなものでもないみたい。

もう少し調べると

なので、 System 名前空間Uri クラスの EscapeDataString メソッドを使えばいいらしい。

var postData = "body=" + Uri.EscapeDataString(messageTextBox.Text);

これで解決。


って、.NET Client Profileだったからいけなかったってオチでした。 ClientProfileに

あー恥ずかしい。