private bool selectionSupportsReference(TemplateType templateType) { //Type does not even supports reference. Nothing to load if (!templateType.SupportsReference()) { return(false); } //At least one remote and reference are supported, so we ask the user as we have no way to know before loading the whole template if (_selectedTemplates.Any(x => x.DatabaseType == TemplateDatabaseType.Remote)) { return(true); } //only local or system. We can check for references return(_selectedTemplates.OfType <LocalTemplate>().Any(x => x.HasReferences)); }