Directive using not working with blazor project

LB 0 Points de réputation
2024-04-02T22:28:56.3+00:00

Hello. In my blazor Web Assembly app, I have the following structure (simplified to the useful ones, see below). I want to make reference in (APP.Client)/Pages/_import.razor to APP.Components.Pages.MyPage for using its class from (APP.Client)/Pages/MyComponentUsingMyClass, but whenever I add "@using APP.Components" in(APP.Client)/Pages/ _import, it is not working. While the exact same reference is known in APP/Components/Pages/_import.razor.

I also want to make a reference to the class "Tools" included in the Namespace "Toolbox" which I want to use from both APP and APP.Client (so to not duplicate, I put it at the same level).

I inserted in both _import.razor the "using ..\Toolbox " directive (only form accepted as "Modules.Toolbox" won't be recognized, but once trying to use "Tools" in pages of either APP or Client, it never works.

I am so confused that namespaces never work in C#, I don't understand the idea of using a specific keyword to tell the machine that it exists, if it is not even taken into account in the end

Could you please help me clarify?

APP
-Modules
--Tools
-APP
--bin
C#
C#
Langage de programmation orienté objet et sécurisé au niveau des types, qui prend ses racines dans la famille des langages C et inclut la prise en charge de la programmation orientée vers les composants.
13 questions
{count} votes

1 réponse

Trier par : Le plus utile
  1. Alexis Thorez 10,980 Points de réputation
    2024-04-03T06:24:03.91+00:00

    Bonjour LB,

    Merci d'avoir sollicité la communauté Q&A France.

    Voici plusieurs choses à vérifier/tester:

    Vérifiez la structure de votre projet :

    • Assurez-vous que vos fichiers sont correctement organisés dans les dossiers appropriés. Vérifiez que les fichiers se trouvent aux emplacements attendus (par exemple, APP.Client/Pages, APP.Components/Pages, etc.).
    • Assurez-vous que les noms de vos dossiers et fichiers sont corrects et cohérents.

    Référencez correctement les composants :

    • Dans votre fichier _import.razor situé dans APP.Client/Pages, vous pouvez ajouter la référence au composant MyPage de la manière suivante :
        @using APP.Components.Pages
        
      
    • Assurez-vous que le nom du composant est correct et qu’il correspond exactement à celui défini dans votre projet.

    Référencez les classes de l’espace de noms “Toolbox” :

    • Si vous souhaitez utiliser la classe “Tools” de l’espace de noms “Toolbox” dans les deux projets (APP et APP.Client), vous pouvez ajouter la référence au début de vos fichiers .razor :
        @using Toolbox
        
      
    • Assurez-vous que le nom de l’espace de noms et le nom de la classe sont corrects.

    Vérifiez les erreurs de compilation :

    • Assurez-vous qu’il n’y a pas d’erreurs de compilation dans vos fichiers. Parfois, des erreurs de syntaxe ou de référence peuvent empêcher les noms d’espace d’être reconnus correctement.

    Nettoyez et reconstruisez votre solution :

    • Essayez de nettoyer et de reconstruire votre solution pour vous assurer que tous les fichiers sont correctement synchronisés.

    A bientôt

    Alexis

    1 personne a trouvé cette réponse utile.
    0 commentaires Aucun commentaire

Votre réponse

Les réponses peuvent être marquées comme Réponses acceptées par l’auteur de la question, ce qui permet aux utilisateurs de connaître la réponse qui a résolu le problème de l’auteur.