/// <summary> /// Returns an item in the solution for the given dropped file. /// </summary> public override IItemContainer GetItemInSolution(string filePath) { var filename = Path.GetFileNameWithoutExtension(filePath); var folderName = this.AddedItems[filename]; if (!string.IsNullOrEmpty(folderName)) { // Get the newly created folder in the solution var templateItemFolder = this.TargetContainer.Find <IFolder>(folderName).FirstOrDefault(); if (templateItemFolder == null) { tracer.Error( Resources.VsTemplateFileImporter_TraceProjectFolderNotFound, folderName, TargetContainer.GetLogicalPath()); return(null); } else { // Find first *.vstemplate in the folder var templateFile = templateItemFolder.Find <IItem>("*" + VsTemplateExtension).FirstOrDefault(); if (templateFile == null) { tracer.Error( Resources.VsTemplateFileImporter_TraceVsTemplateFileNotFound, VsTemplateExtension, templateItemFolder.GetLogicalPath()); return(null); } else { tracer.Info( Resources.VsTemplateFileImporter_TraceVsTemplateFound, templateFile.GetLogicalPath()); return(templateFile as IItemContainer); } } } return(null); }