Archive for 8月 2012
Parse<T>
今日、twitter経由で悩んでる方いらっしゃったから書いたけども、なんか結構な頻度でこんなコード書いてるなーというもの。
ジェネリック メソッド内で、ジェネリック型引数に対して、
void Method<T>(string s)
{
var x = T.Parse(s);
}
的なことがしたいけどもできない(ジェネリックでは静的メソッドの解決ができない)のがめんどくさいなぁということで、
void Method<T>(string s)
{
var x = Parser.Parse<T>(s);
}
的なメソッドを用意したいというもの。(実際にはParse処理で例外を出したくないので、TryParseとParseOrNullを用意。)
一応、リフレクションを使ってできるものの、TryParseを呼ぶたびにリフレクションはしたくないので、静的コンストラクターでデリゲート化して持っておくというやり方。
このくらい標準であってもいい気もするものの、エラーの出方が微妙(対応していない型に対して使うとき、ほんとはビルド エラーになってほしいのに、実行時例外になる)なので、どうしたものか。
Windows 8 RTM
Windows 8、完成して、今週中にはOEMメーカーにお渡しするそうで。
そのほか、
- 8/15からMSDN/TechNet会員向けダウンロード
- 9/1からソフトウェア アシュアランス付きのボリューム ライセンス顧客への提供
- 一般販売は10/26
Visual Studio 2012のRTMも同タイミング(米国時間で8/15)にMSDN会員向けリリースっぽい。