手続き型音楽の日常

関数型音楽に乗り換えたい

dynamic なオブジェクトに IntelliSense を表示する

ネタです。ホントは出ちゃいけないんじゃないの?という記事。

Visual Studio 2015 で最初確認したんですが、家に帰ってきて 2017 でやってみても同じ結果でした。

Roslyn のせいなのかな?

コード

namespace dynamicIntelliSenseTest
{
    class Program
    {
        static void Main(string[] args)
        {
            (0 as dynamic) // この後ドットをつけると補完が出てしまう
        }
    }

    static class Hoge
    {
        public static void ホントは出ちゃいけないんじゃないの(this object hoge){
            return;
        }
    }
}

f:id:yuzutan_hnk:20170908012633p:plain:w600

dynamic の実態は object 型なので間違ってはいないのですが、入力した後は定義を紛失するようです。

f:id:yuzutan_hnk:20170908013007p:plain:w600