Cet article est un article miroir de traduction automatique, veuillez cliquer ici pour accéder à l’article original.

Vue: 14473|Répondre: 2

[ASP.NET] Opérations simples d’énumération

[Copié le lien]
Publié sur 10/01/2019 09:58:32 | | | |
        /// <summary>
        Obtenez le nom enum en fonction de la valeur de l’enum
        /// </summary>
        <typeparam name="T"></typeparam>
        <param name="key"></param>
        /// <returns></returns>
        chaîne statique publique GetEnumNameByKey<T>(int key)
        {
            nom de la chaîne Str = chaîne. Vide ;
            type var = typede(T) ;
            nameStr = Enum.GetName(type, key) ;
            retourner nomStr ;
        }

        /// <summary>
        Obtenez le nom enum en fonction de la valeur de l’enum
        /// </summary>
        <typeparam name="T"></typeparam>
        <param name="t"></param>
        /// <returns></returns>
        chaîne statique publique GetEnumNameByKey<T>(T t)
        {
            nom de la chaîne Str = chaîne. Vide ;
            type var = typede(T) ;
            nameStr = Enum.GetName(type, t) ;
            retourner nomStr ;
        }

        /// <summary>
        Les chaînes sont converties en types enum
        /// </summary>
        <typeparam name="T"></typeparam>
        <param name="str"></param>
        <param name="t"></param>
        /// <returns></returns>
        bool statique privé StringConvertToEnum<T>(string str, out T t) où T : new()
        {
            var obj = faux ;
            t = nouveau T() ;
            essaie
            {
                t = (T)Enum. Analyse (typede(T), force) ;
                obj = vrai ;
            }
            catch (Exception ex)
            {
                obj = faux ;
            }

            retour obj ;
        }

        /// <summary>
        Obtenez une collection de noms d’enums
        /// </summary>
        <typeparam name="T"></typeparam>
        /// <returns></returns>
        chaîne statique publique[] GetNamesArr<T>()
        {
            retourner Enum.GetNames(typeof(T)) ;
        }

        /// <summary>
        Convertir les enums en collections de dictionnaires
        /// </summary>
        <typeparam name="T"> énumérer les types</typeparam>
        /// <returns></returns>
        Dictionnaire<chaîne statique publique, int> GetEnumDic<T>()
        {

            Dictionary<string, int> resultList = new Dictionary<string, int>() ;
            Type type = typede(T) ;
            var strList = GetNamesArr<T>(). ToList() ;
            foreach (clé de chaîne dans strList)
            {
                string val = Enum.Format(type, Enum.Parse(type, key), « d ») ;
                resultList.Add(key, int. Parse(val)) ;
            }
            retourner résultList ;
        }

        /// <summary>
        Obtenez une description des paramètres
        /// </summary>
        <typeparam name="T"></typeparam>
        <param name="t"></param>
        /// <returns></returns>
        chaîne statique publique <T>GetDescriptionByKey(T t)
        {
            var type = t.GetType() ;
            FieldInfo fieldInfo = type. GetField(GetEnumNomByKey<T>(t)) ;
            AttributAttribut DescriptionAttribute = Attribut. GetCustomAttribute(fieldInfo, typeof(DescriptionAttribute), false) comme DescriptionAttribute ;
            Var Description = attribut. Description ;
            retour Description ;
        }







Précédent:3e année classe A - À partir de maintenant, tout le monde est otage [Drame japonais] [720P] [Mise à jour à 01]
Prochain:implémentation js pour télécharger des fichiers
Publié sur 10/01/2019 10:10:07 |
Publié sur 10/01/2019 10:11:33 |
Code de programme Veuillez insérer Ajouter le texte du code
Démenti:
Tous les logiciels, supports de programmation ou articles publiés par Code Farmer Network sont uniquement destinés à l’apprentissage et à la recherche ; Le contenu ci-dessus ne doit pas être utilisé à des fins commerciales ou illégales, sinon les utilisateurs assumeront toutes les conséquences. Les informations sur ce site proviennent d’Internet, et les litiges de droits d’auteur n’ont rien à voir avec ce site. Vous devez supprimer complètement le contenu ci-dessus de votre ordinateur dans les 24 heures suivant le téléchargement. Si vous aimez le programme, merci de soutenir un logiciel authentique, d’acheter l’immatriculation et d’obtenir de meilleurs services authentiques. En cas d’infraction, veuillez nous contacter par e-mail.

Mail To:help@itsvse.com