public bool WriteTemplateToFile <T>(T template, ISourceFileMapRepository <T, M> mapRepository) where T : ITemplate <M> { var templateOutput = template.TransformText(); var fullName = mapRepository.GetSourcePath(template) + template.GetFileName(); var hasWritten = _FileService.WriteFileToDisk(fullName, templateOutput); _ProjectFactory.UpdateProjectFileWithFileReference <M>(template); return(hasWritten); }