Classe non mise à jour dans le fichier gics

asp.net-core blazor c#

Question

J'ai cette classe

public class Questionnaire
{
    public List<Question> Questions { get; set; }

    public Question this[int i]
    {
        get { return Questions[i]; }
    }
}

Et j'essaie de l'utiliser sur ma page avec

public class Questionnaire
{
    public List<Question> Questions { get; set; }

    public Question this[int i]
    {
        get { return Questions[i]; }
    }
}

Mais je continue à obtenir

'Questionnaire' ne contient pas de définition pour 'Questions' et aucune méthode d'extension 'Questions' acceptant un premier argument de type 'Questionnaire' n'a pu être trouvée (vous manque une directive d'utilisation ou une référence d'assemblage?)

J'ai remarqué que je peux sembler appeler

public class Questionnaire
{
    public List<Question> Questions { get; set; }

    public Question this[int i]
    {
        get { return Questions[i]; }
    }
}

Même si j'ai supprimé la propriété QuestionNumber bien longtemps.

Après la référence, je peux voir que dans Questionnaire.gics il existe une propriété QuestionNumber mais pas de propriété Questions .

J'ai essayé de redémarrer VS, de nettoyer le projet, de reconstruire le projet mais cela n'a rien donné.

Réponse acceptée

Je pense que vous avez une page qui s'appelle également Questionnaire (Questionnaire.cshtml). Dans les applications Blazor, chaque fichier .cshtml est utilisé pour générer une classe qui porte le même nom que le fichier .cshtml lors de la génération. Donc, vous avez probablement deux classes de Questionnaire: celle que vous avez définie vous-même et celle générée à partir du fichier Questionnaire. Renommer l'une des deux classes devrait résoudre le problème.




Sous licence: CC-BY-SA with attribution
Non affilié à Stack Overflow
Est-ce KB légal? Oui, apprenez pourquoi
Sous licence: CC-BY-SA with attribution
Non affilié à Stack Overflow
Est-ce KB légal? Oui, apprenez pourquoi