2009-01-15 9 views
1

Dans le passé, je n'ai pas vraiment utilisé les espaces de noms, mais dans ce projet j'utilise SourceSafe qui nécessite un projet, qui place tout dans les espaces de noms ...en utilisant une classe publique statique dans un 'Project' avec des espaces de nommage définis

Dans le passé, je venais juste de créer une classe statique publique dans le dossier App_Code et d'y accéder n'importe où dans mon application, mais maintenant je ne peux pas sembler le faire.

Par exemple, mes default.aspx.cs ressemble à ceci:

namespace Personnel_Database 
{ 
    public partial class _default : System.Web.UI.Page 
    { 
     protected void Page_Load(object sender, EventArgs e) 
     { 
       utils.someFunction();//this does not work 

et ma classe utils.cs ressemble à ceci:

namespace Personnel_Database.App_Code 
{ 
    public static class utils 
    { 

Comment puis-je avoir que je peux appeler util.someMethod() à l'intérieur de mon défaut? Est-ce que je me trompe en supposant que c'est un problème d'espace de noms? Je veux juste utils.cs soient disponibles à l'échelle mondiale dans l'espace de noms Personnel_Database

Répondre

1

Soit vous inclure l'espace de noms avec une directive à l'aide:

using Personnel_Database.App_Code; 
// now you can use everything that is inside the Personnel_Database.App_Code namespace 
namespace Personnel_Database 
{ 
    ... 

Ou vous utilisez le nom complet quallified de la classe utils (y compris son espace de noms), par exemple:

protected void Page_Load(object sender, EventArgs e) 
    { 
    Personnel_Database.App_Code.utils.someFunction(); 
    ... 
0

Vous avez juste besoin d'ajouter:

using Personnel_Database.App_Code; 

en haut de votre fichier code-behind. Si vous avez besoin d'accès dans le balisage, vous pouvez l'importer en utilisant:

<%@ Import Namespace="Personnel_Database.App_Code" %> 
0

Vous avez besoin d'une instruction à l'aide dans le fichier de classe Personnel_Database Personnel_Database, à savoir

using Personnel_Database.App_Code; 

Google/MSDN pour l'instruction à l'aide.

0

je me suis trompé, si je fais insteada la classe Utils:

namespace Personnel_Database 
{ 
    public static class utils  
    { 

Il fonctionne, buut ne montre pas IntelliSense, comment puis-je pour le faire?

+0

Si vous suivez cette route - et je ne la recommande pas forcément car les espaces de noms ajoutent de la valeur à votre code - vous pouvez également modifier l'espace de noms par défaut dans vos propriétés de projet pour créer de nouvelles classes dans le projet obtenez votre espace de noms préféré par défaut. – tvanfosson

Questions connexes