我有这个班级
public class Questionnaire
{
public List<Question> Questions { get; set; }
public Question this[int i]
{
get { return Questions[i]; }
}
}
我试图在我的页面上使用
Questionnaire questionnaire;
protected override async Task OnInitAsync()
{
questionnaire.Questions = new List<Question>();
}
但我只是继续
&#39;问卷&#39;不包含&#39;问题&#39;的定义没有扩展方法&#39;问题&#39;接受类型&#39;问卷调查的第一个论点&#39;可以找到(你错过了使用指令或程序集引用吗?)
我注意到我可以似乎打电话
questionnaire.QuestionNumber = 1;
即使我之前删除了QuestionNumber
属性。
根据参考资料,我可以看到Questionnaire.g.i.cs
中存在QuestionNumber
属性,但没有Questions
属性。
我尝试重新启动VS,清理项目,重建项目,但这没有取得任何成果。
答案 0 :(得分:2)
我怀疑你有一个名为Questionnaire(Questionnaire.cshtml)的页面。在Blazor应用程序中,每个.cshtml文件用于在构建时生成一个与.cshtml文件同名的类。所以你可能有两个问卷类:你自己定义的那个,以及问卷调查文件生成的那个。重命名这两个类中的一个应该可以解决问题。