public static ITemplate FindTemplateInstance(this IOutputTarget project, string templateId, IMetadataModel model)
 {
     return(project.FindTemplateInstance(TemplateDependency.OnModel(templateId, model)));
 }
        //public static bool HasTemplateInstance(this IOutputTarget project, string templateId)
        //{
        //    return project.FindTemplateInstance(templateId, (t) => true, SearchOption.OnlyThisProject) != null;
        //}

        //public static ITemplate FindTemplateInstance(this IOutputTarget project, string templateId, string className)
        //{
        //    return project.FindTemplateInstance(templateId, TemplateDependency.OnClassName(templateId, className));
        //}

        public static TTemplate FindTemplateInstance <TTemplate>(this IOutputTarget project, string templateId, IMetadataModel model) where TTemplate : class
        {
            return(project.FindTemplateInstance(templateId, model) as TTemplate);
        }