IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C# Discussion :

Application console - Une référence d'objet est requise pour la propriété, la méthode ou le champ non statique [Débutant]


Sujet :

C#

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Lycéen
    Inscrit en
    Mai 2012
    Messages
    68
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Lycéen

    Informations forums :
    Inscription : Mai 2012
    Messages : 68
    Par défaut Application console - Une référence d'objet est requise pour la propriété, la méthode ou le champ non statique
    Bonjour, j'aimerais dev une application console, et d'origine mon " main " est en statique, c'est normal ? est il possible de l'avoir en non statique ?
    Et pouvez vous m'expliquer mon erreur (en détail) ainsi que comment résoudre le problème:
    Nom : 1hteEtWk.png
Affichages : 6510
Taille : 53,8 Ko

  2. #2
    Expert confirmé

    Homme Profil pro
    Responsable déploiement (SCCM, InTune, GPO)
    Inscrit en
    Juillet 2014
    Messages
    3 218
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Responsable déploiement (SCCM, InTune, GPO)
    Secteur : Transports

    Informations forums :
    Inscription : Juillet 2014
    Messages : 3 218
    Par défaut
    Oui c'est normal, je ne pense pas que ce soit modifiable.

    Une méthode statique n'a pas connaissance des membres des instances de classes.

  3. #3
    Expert confirmé

    Homme Profil pro
    Responsable déploiement (SCCM, InTune, GPO)
    Inscrit en
    Juillet 2014
    Messages
    3 218
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Responsable déploiement (SCCM, InTune, GPO)
    Secteur : Transports

    Informations forums :
    Inscription : Juillet 2014
    Messages : 3 218
    Par défaut
    Tout dépend de la structure que tu veux appliquer à ton programme mais voici quelques idées.

    Soit tu déclare ta propriété aussi en statique
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
            public static string programa = "aaaa";
            static void Main(string[] args)
            {
                Console.WriteLine(programa);
            }

    Soit tu la déclare dans le main
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
            static void Main(string[] args)
            {
                string programa = "aaaa";
                Console.WriteLine(programa);
            }

    Soit tu utilise une nouvelle classe pour tes propriétés
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
        class Program
        {
            static void Main(string[] args)
            {
                MonProgramme MP = new MonProgramme();
                Console.WriteLine(MP.programa);
            }
        }
     
        public class MonProgramme
        {
            public string programa = "aaaa";
        }

    Tu peut aussi décider que ton "main" sera dans une classe instancié
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
        class Program
        {
            static void Main(string[] args)
            {
                MonProgramme MP = new MonProgramme();
                MP.Main(args);
            }
        }
     
        public class MonProgramme
        {
            public string programa = "aaaa";
            public void Main(string[] args)
            {
                Console.WriteLine(programa);
            }
        }

  4. #4
    Membre confirmé
    Profil pro
    Lycéen
    Inscrit en
    Mai 2012
    Messages
    68
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Lycéen

    Informations forums :
    Inscription : Mai 2012
    Messages : 68
    Par défaut
    Citation Envoyé par ericlm128 Voir le message
    Tout dépend de la structure que tu veux appliquer à ton programme mais voici quelques idées.

    Soit tu déclare ta propriété aussi en statique
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
            public static string programa = "aaaa";
            static void Main(string[] args)
            {
                Console.WriteLine(programa);
            }

    Soit tu la déclare dans le main
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
            static void Main(string[] args)
            {
                string programa = "aaaa";
                Console.WriteLine(programa);
            }

    Soit tu utilise une nouvelle classe pour tes propriétés
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
        class Program
        {
            static void Main(string[] args)
            {
                MonProgramme MP = new MonProgramme();
                Console.WriteLine(MP.programa);
            }
        }
     
        public class MonProgramme
        {
            public string programa = "aaaa";
        }

    Tu peut aussi décider que ton "main" sera dans une classe instancié
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
        class Program
        {
            static void Main(string[] args)
            {
                MonProgramme MP = new MonProgramme();
                MP.Main(args);
            }
        }
     
        public class MonProgramme
        {
            public string programa = "aaaa";
            public void Main(string[] args)
            {
                Console.WriteLine(programa);
            }
        }
    Merci beaucoup

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Débutant] problème référence d'objet est requise pour NavigationService
    Par Veidt dans le forum Windows Phone
    Réponses: 2
    Dernier message: 11/08/2012, 00h13
  2. Réponses: 1
    Dernier message: 17/03/2011, 01h54
  3. référence d'objet est requise
    Par cyriltec dans le forum C#
    Réponses: 1
    Dernier message: 19/03/2010, 09h27
  4. Réponses: 2
    Dernier message: 30/12/2006, 13h34

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo