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 :

Problème Using et namespace [Débutant]


Sujet :

C#

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juin 2011
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2011
    Messages : 9
    Points : 6
    Points
    6
    Par défaut Problème Using et namespace
    Bonjour,

    J'essaye de réaliser un gestionnaire du stock en C# / ASP.NET sachant que c'est la 1ere fois que j'utilise ce langage.

    J'ai décidé d'utiliser le modèle MVC (à la main et non pas autogénéré par Visual).
    Ma hiérarchie est donc la suivante :

    -Controllers
    .......UserControls
    -Models
    .......DAO
    .......Metiers
    -Scripts
    -Styles
    -Views
    Database.config
    Default.aspx
    web.config

    Mon problème est le suivant : Lorsque je souhaite appeler une fonction d'une classe A à l'aide d'une classe B celà produit un erreur à la compilation.
    Erreur 24 Le type ou le nom d'espace de noms 'DAO' n'existe pas dans l'espace de noms 'GestionStock' (une référence d'assembly est-elle manquante*?
    En gros si je comprend bien il faut utiliser un using pour définir un "chemin" sauf que ça ne marche pas.

    Ma classe DAO est la suivante :

    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
    18
    19
    20
    using System;
    using System.Data;
    using System.Configuration;
    using System.Web;
    using System.Web.Security;
    using System.Web.UI;
    using System.Web.UI.HtmlControls;
    using System.Web.UI.WebControls;
    using System.Web.UI.WebControls.WebParts;
     
    namespace GestionStock.DAO
    {
        public class DAO
        {
            public static string getConnectionString()
            {
                return ConfigurationSettings.AppSettings["ConnexionString"];
            }
        }
    }

    Et ma classe recherche :

    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
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    using System;
    using System.Collections;
    using System.Configuration;
    using System.Data;
    using System.Web;
    using System.Web.Security;
    using System.Web.UI;
    using System.Web.UI.HtmlControls;
    using System.Web.UI.WebControls;
    using System.Web.UI.WebControls.WebParts;
    using GestionStock.DAO;
     
    namespace GestionStock
    {
        public partial class RechercheEquipement : System.Web.UI.Page
        {
     
            protected void Page_Load(object sender, EventArgs e)
            {
                ..
            }
     
            protected void btn_RechercheNSerie_OnClick(object sender, EventArgs e)
            {
                String s = DAO.getConnectionString();
            }
     
        }
    }

    L'using est donc correcte et il devrait être possible de faire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    DAO.getConnectionString();
    J'ai beau chercher un peu partout je ne trouve pas de solution, si quelqu'un a une idée je suis tout ouïe

    Merci d'avance.

  2. #2
    Membre habitué
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Octobre 2010
    Messages
    65
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2010
    Messages : 65
    Points : 159
    Points
    159
    Par défaut
    Bonjour,

    Tu y est presque.... en plus du using il faut que tu ajoute une reference a DAO du coté du controller.

    "Click droit su reference Add reference" et le tour est joué.

  3. #3
    Membre expérimenté
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2007
    Messages
    871
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Février 2007
    Messages : 871
    Points : 1 502
    Points
    1 502
    Par défaut
    Salut,

    Tu n'as pas fait de fautes particulières, juste rencontré un comportement que je dirai "érronné". Tu as un problème lié au namespace et classes identiques.

    Je m'explique:
    Tu as un namespace : DAO
    Une classe : DAO

    Et visual studio lorsque tu écrit :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    DAO.getConnectionString();
    ne sait pas si il faut utiliser le namespace DAO ou la classe DAO.

    Pour faire un test, renomme ta classe DAO en Plop par exemple, tu verras que tu pourra faire
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Plop.getConnectionString();
    => du coup plusieurs solutions s'offrent à toi



    au final la solution la plus simple est de renommer ta classe DAO en ConnectionManager par exemple.

  4. #4
    Membre éprouvé Avatar de kheironn
    Homme Profil pro
    Chef de projets technique C# / MVC / .Net
    Inscrit en
    Février 2007
    Messages
    822
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Chef de projets technique C# / MVC / .Net
    Secteur : Conseil

    Informations forums :
    Inscription : Février 2007
    Messages : 822
    Points : 1 108
    Points
    1 108
    Par défaut
    Citation Envoyé par Kagukuk Voir le message
    Bonjour,

    Tu y est presque.... en plus du using il faut que tu ajoute une reference a DAO du coté du controller.

    "Click droit su reference Add reference" et le tour est joué.
    C'est probablement le même projet...
    Et s'il avait manqué une référence, l'erreur aurait été à la ligne 11 du 2ème extrait de code (là où il importe son ns).

    Edit : C'est pas grave, ça arrive de lire de travers...

  5. #5
    Membre habitué
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Octobre 2010
    Messages
    65
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2010
    Messages : 65
    Points : 159
    Points
    159
    Par défaut
    Mea culpa j'ai probablement lut trop vite et mal extrapolé.

    Pour moi la DAO est systématiquemment dans un autre projet(biblothèque de classe), voilà le pourquoi du comment, d'ailleurs interdit de passer directement du controller a la DAO.....

  6. #6
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juin 2011
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2011
    Messages : 9
    Points : 6
    Points
    6
    Par défaut
    Bonjour,

    Tout d'abord merci pour vos réponses.

    J'ai essayé tout ce que vous m'avez dis. Pour finir, j'ai renommé la classe en DBConnexion. Mais le probleme persiste, je ne peux utiliser ni la classe, ni l'using gestionStock.DAO.
    L'erreur reste la même.
    L'erreur peut-elle venir de l'arborescence des dossiers dans lesquels sont mis les ".cs"?

  7. #7
    Membre éprouvé Avatar de kheironn
    Homme Profil pro
    Chef de projets technique C# / MVC / .Net
    Inscrit en
    Février 2007
    Messages
    822
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Chef de projets technique C# / MVC / .Net
    Secteur : Conseil

    Informations forums :
    Inscription : Février 2007
    Messages : 822
    Points : 1 108
    Points
    1 108
    Par défaut
    Remontre nous ton code modifié stp.

  8. #8
    Membre confirmé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Décembre 2005
    Messages
    482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Décembre 2005
    Messages : 482
    Points : 625
    Points
    625
    Par défaut
    Salut,
    arrives-tu à faire :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     String s = GestionStock.DAO.DAO.getConnectionString();
    ?

    le projet contenant ta classe GestionStock.DAO.DAO compile t'il ?

  9. #9
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juin 2011
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2011
    Messages : 9
    Points : 6
    Points
    6
    Par défaut
    Bonjour à tous et encore merci pour vos réponses.

    J'ai réussi à régler mon problème en recréant un projet. Là je n'ai eu aucun problème pour les namespaces et les using.
    Mon précédant projet était buggé certaines options ne devait pas avoir été mises. Il ne détectait simplement pas les namespaces à l'intérieur du projet...

    Bonne continuation!

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

Discussions similaires

  1. [2.x] Problème avec les namespaces !
    Par Guerr dans le forum Symfony
    Réponses: 10
    Dernier message: 27/09/2011, 15h01
  2. [JAXB] JAXB 1.0 Problème avec les namespaces
    Par ekremyilmaz dans le forum Format d'échange (XML, JSON...)
    Réponses: 0
    Dernier message: 30/05/2011, 18h04
  3. Problème uses inclusion impossible
    Par moi89 dans le forum Débuter
    Réponses: 2
    Dernier message: 10/04/2008, 22h10
  4. Un bien étrange problème avec mes namespaces
    Par zarbiman dans le forum C#
    Réponses: 5
    Dernier message: 03/03/2007, 18h59
  5. [DOM] Problème avec les namespaces
    Par clincks dans le forum Format d'échange (XML, JSON...)
    Réponses: 1
    Dernier message: 26/06/2006, 20h40

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