Dostęp do projektów przez DTE w szablonie C # T4

Obecnie próbuję wykonać iterację wszystkich moich projektów (sharepoint), aby uzyskać wszystkie dodatki funkcji do pliku. tam chcę poprzedzić je nazwą projektu. Moim problemem jest DTE.Solution.Item i DTE.Solution.Projects.Item (lub moduły wyliczające dla foreach) nie przyjmują liczby całkowitej jako parametru, a foreach zwraca obiekt, który nie może być rzutowany na Project.

Oto mój fragment kodu:

var hostServiceProvider = (IServiceProvider) Host;
var dte = (DTE) hostServiceProvider.GetService(typeof(DTE));
var projectCount = dte.Solution.Projects.Count;

var projects = new Dictionary<string, string>();

foreach(Project dteProject in dte.Solution)
{
    var dteProject = dte.Solution.Item(i);
    projects.Add(dteProject.Name, dteProject.FullName);
}

Dobra - kod jest w porządku - debugger NIE! Moje wyjątki, które są wyrzucane w kontekście debugowania, ale szablon będzie działał poprawnie, jeśli debuger nie zostanie dołączony.

questionAnswers(2)

yourAnswerToTheQuestion