コード例 #1
0
        //--------------------------------------------------------------------------------------------------
        public static IEnumerable <string> GetInspiration(CListeParametresInspiration parametres)
        {
            HashSet <string>     set       = new HashSet <string>();
            IEnumerable <string> lstRetour = null;

            foreach (IParametreInspiration parametre in parametres)
            {
                if (parametre != null)
                {
                    IFournisseurInspiration fournisseur = null;
                    if (m_dicFournisseursParTypeDeParametre.TryGetValue(parametre.GetType(), out fournisseur))
                    {
                        IEnumerable <string> lstTmp = fournisseur.GetInspiration(parametre);
                        if (parametres.Count() == 1)
                        {
                            lstRetour = lstTmp;
                        }
                        else
                        {
                            foreach (string strChaine in lstTmp)
                            {
                                set.Add(strChaine);
                            }
                        }
                    }
                }
            }

            if (parametres.Count() > 1)
            {
                List <string> lstTmp = new List <string>();
                foreach (string str in set)
                {
                    lstTmp.Add(str);
                }
                lstRetour = lstTmp;
            }
            return(lstRetour);
        }
コード例 #2
0
 //--------------------------------------------------------------------------------------------------
 public static void RegisterFournisseur(IFournisseurInspiration fournisseur, Type typeParametreInspiration)
 {
     m_dicFournisseursParTypeDeParametre[typeParametreInspiration] = fournisseur;
 }