"Microsoft.CodeAnalysis.CSharp.Scripting"を1.3.2に更新してから問題があります。Roslyn:VSIXパッケージのメソッドが見つかりません
再現する手順:
- をVSアドインEditorMarginクラスを作成します。
- .NETを4.6に変更する
- Microsoft.CodeAnalysis.CSharp.ScriptingおよびMicrosoft.CodeAnalysis.CSharpをインストールします。 CTORのどこかに次のコードを入れて
:実行した後
var t = new CSharpCompilationOptions(OutputKind.DynamicallyLinkedLibrary)
をアドインをそれが
見つからないメソッドの例外をスローします
それは見つけることができませんCSharpCompilationOptions
のコンストラクタです。私は、 "Microsoft.CodeAnalysis.CSharp.Scripting"(上記の場合には必要ない)をインストールしないと、すべて動作することに気付きました。 Microsoft.CodeAnalysis.CSharp.Scriptingの依存関係の1つは、いくつかのパッケージをインストールすると思います。
私は "Fuslogvw"を実行してバインディングエラーがあるかどうかを確認しようとしましたが、何も役立つものが見つかりませんでした。
アイデア?
更新 - 私は、Visual Studio 2015更新3
を使用アップデート2 私は1.2.0から1.1.37に "System.Collections.Immutable" を格下げし、それが再び動作します。 アップデート3 私が報告したバグが見つかりました:問題は、私はロザリンスクリプトAPIはそのバージョンを使用しているため、1.2.0を使用する必要がある https://github.com/dotnet/roslyn/issues/12247
を。
使用しているVisual Studio 2015のバージョンは何ですか? – JoshVarty
更新です。3.サンプルを用意して例外を表示することができます。それは役に立つだろうか? – user3733340
バインドエラーではないため、すべてのバインドをログに記録する必要があります。また、devenv.exe.configを調べる必要があります。これは、IDEがこれらのアセンブリを使用してからどのバージョンがロードされるかを決定するものです。ちょっと変わったときに、ちょうどすべてのアップデートがあなたのアドインを破るでしょう。あなたはRoslynがちょっと安定するまで待つことをお勧めします。1年または2年: –