T4(名前付け規則に基づく)を使用するテンプレートインターフェイス用にEnvDTE
を使用してプロジェクト内のすべてのクラスをリストする方法を作成する際に問題があります。それを行う方法を記述しているようです。私は始めました:EnvDTEを使用してプロジェクト内のユーザークラスのリストを収集します
<#@ template debug="true" hostspecific="true" language="C#" #>
<#@ output extension=".cs" #>
<#@ Assembly name="EnvDTE" #>
<#@ Assembly name="System.Core" #>
<#@ import namespace="EnvDTE" #>
<#@ Import Namespace="System.Linq" #>
<#@ Import Namespace="System.Collections.Generic" #>
<#
var env = (DTE)((IServiceProvider)this.Host)
.GetService(typeof(EnvDTE.DTE));
...そして私は横向きに出発しました。私は自分のプロジェクトを特定することができますが、私は、インターフェイスを作成するためのフラットなリストにフィルタリングしたいクラスをプロジェクトで収集することができません。
どうすればいいですか?私は自分のプロジェクトでクラスをしたいだけです。
私はこれがVisual Studioであると仮定しています。もしそうなら、あなたはRoslynをまったく見たことがありますか? – Ameen
ここで私の答えを見てくださいhttp://stackoverflow.com/a/6572941/157224 DTE – adrianm
@adrianmでクラスを見つけることについては、これは私が探しているかもしれないように見える(一度私はC#に翻訳する)...私は朝にこれを試してみる。 –