はじめに
いろいろごめんなさい。
超便利メソッド
VB.NETにはLen(int)とかLen(char)とかLen(string)とかの超便利メソッドがたっくさんありますよね。
でもそれらのメソッドはC#では使えない。不便だと思いません?
それらをC#でも使えるようにするためのメモです11111111
え?使う必要がない?そんなこと言わないでください。
手順
- ソリューションエクスプローラー → 参照設定 → 参照の追加 →
Microsoft.VisualBasicのチェックボックスを入れる → OK using Microsoft.VisualBasic;をコードに追加- 好きなだけVBのメソッドを呼び出す
- 楽しい1111111
using System; // 魔法のキーワード☆彡 using Microsoft.VisualBasic; namespace VBCSharp { class Program { static void Main(string[] args) { Console.WriteLine(Strings.Len("VBバンザーイ")); Console.WriteLine(Strings.ChrW(12354)); } } }
実行結果
9 あ
弊社のVisual Studioのバージョンは2013なので現状はクラス名*1は省略できませんが、C# 6.0ではusing staticがサポートされるみたいなので、よりVBらしさをアピールできます。
補足
これはVBのOption StrictとかOption Compareとかのコンパイル時にVBコンパイラが介入して実現する機能についてC#でも行うといったものではなく、単にモジュールで定義されているメソッドを呼び出しているだけです。
ですので、nullと空文字が等しくなるミラクル等価演算子やstringがいつの間にかdoubleに変換される亜空間型変換などはやってくれません。
おわり
*1:モジュールの実態はクラス