none
Ajouter une liste d'adresses IP à Properties.Settings RRS feed

  • Question

  • Bonjour,

    je souhaite ajouter une liste d'adresses IP sous forme (194.98.3.  max=127 min=64; 120.50.3.  max=48 min=8;....)

    et la récupérer après avec le code sous forme d'objets

    class MyIPadresse
        {
            public String IP{ set; get; }
            public int min { set; get; }
            public int max { set; get; }
        }

    Merci.





    • Modifié Zero0o mardi 16 juillet 2013 14:05
    mardi 16 juillet 2013 13:17

Réponses

  • Bonjour,

    solution :

    class MyIpAdress
        {
            public String IP { set; get; }
            public int min { set; get; }
            public int max { set; get; }
    
            public static MyIpAdress StringToIp(String Settingvalue)
            {
    
                string[] str = Settingvalue.Split(',');
                String ip = str[0];
                int de = int.Parse(str[1]);
                int a = int.Parse(str[2]);
    
                return new MyIpAdress() { IP = ip, min = de, max = a };
    
            }
        }


    List<String> listOfIpAdresses = new List<String>(Properties.Settings.Default.ListOfIPAdress.Split(new char[] { ';' }));
    List<MyIpAdress> listIp = new List<MyIpAdress>();
    
    foreach (String strIP in listOfIpAdresses)
    {
      listIp.Add(MyIpAdress.StringToIp(strIP));
    }

    ma liste dans Setting§.settings: listOfIpAdress: String :194.98.3.,64,127;84.14.112.,192,255;118.143.30.,80,95;....

    Merci.


    • Modifié Zero0o jeudi 18 juillet 2013 10:04 erreur
    • Marqué comme réponse Zero0o jeudi 18 juillet 2013 10:04
    jeudi 18 juillet 2013 10:01

Toutes les réponses

  • Bonjour,

    Il faut ajouter un constructeur à votre classe et créer une liste comme ceci:

    J'ai montré deux façons d'ajouter une adresse IP.

    namespace ListeAdresseIP
    {
        using System;
    
        class MyIPadresse
        {
            public String IP { set; get; }
            public int min { set; get; }
            public int max { set; get; }
    
            public MyIPadresse(string IP = "", int min = 1, int max = 1)
            {
                this.IP = IP;
                this.min = min;
                this.max = max;
            }
        }
    }
    
            private void Form1_Load(object sender, EventArgs e)
            {
                List<MyIPadresse> maListe = new List<MyIPadresse>();
                MyIPadresse adresse1 = new MyIPadresse();
                adresse1.IP = "194.98.5.";
                adresse1.min = 64;
                adresse1.max = 127;
                maListe.Add(adresse1);
    
                maListe.Add(new MyIPadresse("194.98.3.", 64, 127));
                maListe.Add(new MyIPadresse("120.50.3.", 8,  48));
            }
    


    Apprenez à développer en C#

    fred

    • Proposé comme réponse Aurel Bera mercredi 17 juillet 2013 13:43
    mercredi 17 juillet 2013 12:09
  • Bonjour,

    Est-ce que vous avez testé les solutions proposées ? Merci de partager avec nous les résultats, afin que d'autres personnes avec le même problème puissent profiter de cette solution.

    Cordialement,


    Aurel BERA, Microsoft
    Microsoft propose ce service gratuitement, dans le but d'aider les utilisateurs et d'élargir les connaissances générales liées aux produits et technologies Microsoft. Ce contenu est fourni "tel quel" et il n'implique aucune responsabilité de la part de Microsoft.

    jeudi 18 juillet 2013 06:33
  • Bonjour,

    solution :

    class MyIpAdress
        {
            public String IP { set; get; }
            public int min { set; get; }
            public int max { set; get; }
    
            public static MyIpAdress StringToIp(String Settingvalue)
            {
    
                string[] str = Settingvalue.Split(',');
                String ip = str[0];
                int de = int.Parse(str[1]);
                int a = int.Parse(str[2]);
    
                return new MyIpAdress() { IP = ip, min = de, max = a };
    
            }
        }


    List<String> listOfIpAdresses = new List<String>(Properties.Settings.Default.ListOfIPAdress.Split(new char[] { ';' }));
    List<MyIpAdress> listIp = new List<MyIpAdress>();
    
    foreach (String strIP in listOfIpAdresses)
    {
      listIp.Add(MyIpAdress.StringToIp(strIP));
    }

    ma liste dans Setting§.settings: listOfIpAdress: String :194.98.3.,64,127;84.14.112.,192,255;118.143.30.,80,95;....

    Merci.


    • Modifié Zero0o jeudi 18 juillet 2013 10:04 erreur
    • Marqué comme réponse Zero0o jeudi 18 juillet 2013 10:04
    jeudi 18 juillet 2013 10:01