none
Problème Assembly - Liés un controle utilisateur/une classe/un fichier .aspx - Erreur CS0246 RRS feed

  • Question

  •  

    Bonjour à tous,

     

    Je me permets de vous contacter car j'ai un gros problème pour me connecter à ma BDD et cela fait 2 jours et demi que ça dure !!! (Je suis à bout de nerf !!!).

    Je suis encore novice en ASP .NET et je développe à l'aide de Web Matrix (dérivé de Visual Studio).

    Je vous expose mon problème :

     

    Je travaille deux machines : une machine pour le code et un serveur pour stocker mes données. Ces deux machines sont connectées à l'aide d'un switch. La connexion marche très bien entre les deux (Donc ne me dites pas SVP que c'est un problème de connexion !!!). J'ai créer mon serveur web IIS sur mon serveur Windows Server 2003 à l'emplacement : C:\Inetpub\wwwroot\SITE_COTIC. Ici, j'ai crée un répertoire virtuel Savoirs. J'ai testé certains fichiers et ils marchent. Tous les fichiers .aspx compilent et affichent correctement ce que je demande. Voila mon code :

     

    Maintenant, le problème est que j'ai crée un dossier Outils contenant une classe Utils.cs (me permettant d'accéder à la base de données) que j'ai compilé sur ma console (en tapant csc /t:library ...) et la compilation est réussi sans erreur ni warning. Voila mon code pour la classe Utils.cs :

     

    using System.Configuration;
    using System.Web;


    namespace Savoirs.Outils {
        using System;

        /// <summary>
        /// Summary description for OutilsBDD.
        /// </summary>
        public class OutilsBDD {
            public static SqlDataReader GetDataReader( string sRequete )
            {
                string sParamConnexion = (string)ConfigurationManager.AppSettings["ConnectString"];
                SqlConnection scConnexion = new SqlConnection( sParamConnexion );
                scConnexion.Open();
                SqlCommand scCommande = new SqlCommand( sRequete, scConnexion );

                // CommandBehavior.CloseConnection provoque la fermeture de la connexion
                // lors de la fermeture du DataReader
                SqlDataReader sdr = scCommande.ExecuteReader( CommandBehavior.CloseConnection );
                return sdr;
            }

            /// <summary>
            /// Creates a new instance of OutilsBDD
            /// </summary>
            public OutilsBDD() {
            }
        }
    }

     

     Ensuite, j'ai crée un contrôle utilisateur (.ascx) nommé ListeDoc.ascx (contenant une liste des documents que je veux afficher à travers une ListBox) dont les entêtes sont :

     

    <%@ Control language="C#" %>

    <% import Namespace="System.Data.Common" %>

    <% import Namespace="System.Data.SqlClient" %>

    <% import Namespace="Savoirs.Outils" %>

     

    Enfin, ma page .aspx que je nomme Test_connexionBDD qui me permet d'afficher le contrôle utilisateur que j'ai crée dont le code est le suivant :

     

    <%@ Page Language="C#" %>
    <%@ Register TagPrefix="uc1" TagName="ListeDoc" Src="Documents/ListeDoc.ascx" %>
    <%@ import Namespace="Savoirs.Outils" %>
    <script runat="server">

     

    </script>
    <html>
    <head>
        <link href="Style.css" type="text/css" rel="stylesheet" />
    </head>
    <body>
        <form runat="server">
            <!-- Insert content here -->
            <UC1:ListeDoc id="ListeDoc1" runat="server"></UC1:ListeDoc>
        </form>
    </body>
    </html>

     

    Lorsque je lance mon application via le lien : http://@IP de mon Serveur/SITE_COTIC/Savoirs/Test_connexionBDD.aspx

    J’obtiens le résultat suivant :

     

    Compilation Error

    Description: An error occurred during the compilation of a resource required to service this request. Please review the following specific error details and modify your source code appropriately.

    Compiler Error Message: CS0246: The type or namespace name 'Savoirs' could not be found (are you missing a using directive or an assembly reference?)

    Source Error:

     

    Line 2:  <%@ import Namespace="System.Data.Common" %>
    Line 3:  <%@ import Namespace="System.Data.SqlClient" %>
    Line 4:  <%@ import Namespace="Savoirs.Outils" %>
    Line 5:  
    Line 6:  <script runat="server">


    Source File: C:\Inetpub\wwwroot\SITE_COTIC\Savoirs\Documents\ListeDoc.ascx    Line: 4

     

    Ce qui est bizarre, incompréhensible et énervent, c'est que le dossier Savoirs EXISTE, le namesapce de ma classe Utils.cs est Savoirs.Outils et j'ai retourné le problème une centaine de fois dans ma tête et je n'arrive vraiment pas à voir le problème (mais comme je suis encore NOVICE ...)

     

    Donc, si vous avez une solution, merci de bien vouloir me répondre.

    Je vous remercie d'avance (et désolé d'avoir écrit autant pour expliquer mon problème)...

     

     

    vendredi 4 juillet 2008 08:15