私は Visual Studio 拡張機能の開発にあまり詳しくありません。また、既存の vs 拡張機能を vs2015 に移行する方法に関するドキュメントはほとんど存在しないか、タイプの使用法に下線を引くのに役に立たないようです。
とはいえ、 VS2015 をサポートするように変更できるように、 Mads Kristensen の JSON intellisense git プロジェクトを複製しました。
最新 (バージョン 14)Microsoft.Web.Editor.dll
アセンブリのクラス メソッド参照に問題があります。Microsoft.Web.Editor.ComponentLocatorWithOrdering<T>.ImportMany()
. アセンブリから削除されたようで、最新のアセンブリで適切なアプローチ/実装が何であるかを判断できません。
...
private readonly ItemHandlerRegistry<IJSONSmartTagProvider> _smartTagProviders;
private void RegisterSmartTagProviders()
{
// using Microsoft.Web.Editor;
IEnumerable<Lazy<IJSONSmartTagProvider>> providers = ComponentLocatorWithOrdering<IJSONSmartTagProvider>.ImportMany();
foreach (Lazy<IJSONSmartTagProvider> provider in providers)
{
_smartTagProviders.RegisterHandler(provider.Value.ItemType, provider.Value);
}
}
...
v12 アセンブリ、型、およびメソッドについて私が持っている最良の参照は、whatdll.comからのものです。それは説明していません。また、移行のコンテキストでそれに関する資料を提供することもありません (これが最終的に私がこの質問を投稿しているものです)。
その他の考慮事項
タイプは、減価償却された (または非推奨の)IJSONSmartTagProvder
カプセル化するように見えるカスタム タイプ SmartTag
です。新しい (推奨される) タイプは( LightbulbSuggestedAction
と呼ばれる概念/コンポーネントへのインターフェイスのようです) ですが、私がコード/カスタム型を新しい型を利用するように変換するには、上記のスニペットで Mads が自分の型を使用する方法と同様に、最新のアセンブリでそれを利用する方法を必ずしも知りません。(また、私が見た唯一の実装クラスはRosylnにあります)。Microsoft.Web.Editor
ISuggestedAction