g.i.cs 文件中的类未更新
Posted
技术标签:
【中文标题】g.i.cs 文件中的类未更新【英文标题】:Class not updated in g.i.cs file 【发布时间】:2018-09-28 18:25:30 【问题描述】:我有这门课
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>();
但我只是不断得到
“问卷”不包含“问题”的定义,并且找不到接受“问卷”类型的第一个参数的扩展方法“问题”(您是否缺少 using 指令或程序集引用?)
我注意到我可以似乎打电话
questionnaire.QuestionNumber = 1;
即使我很久以前就删除了 QuestionNumber
属性。
根据参考,我可以看到在 Questionnaire.g.i.cs
中有一个 QuestionNumber
属性,但没有 Questions
属性。
我尝试重新启动 VS,清理项目,重建项目,但没有任何结果。
【问题讨论】:
检查包含Questionnaire
代码的库的项目引用。我敢打赌它指向磁盘上的一个位置,而不是被添加为项目参考。
Questionnaire.g.i.cs
听起来像是自动生成的代码。你确定你的班级不应该是partial
班级吗?此外,如果应该将其删除,您可能还想了解生成 QuestionNumber
的内容。
自己添加这个属性,我想只是为了好玩)
这个类在哪里,在cshtml里面????
这是 blazor 0.1 吗?还是 0.2?
【参考方案1】:
我怀疑您有一个也称为问卷 (Questionnaire.cshtml) 的页面。在 Blazor 应用中,每个 .cshtml 文件都用于在生成时生成一个与 .cshtml 文件同名的类。因此,您可能有两个问卷类:一个是您自己定义的,一个是从问卷文件生成的。重命名这两个类之一应该可以解决问题。
【讨论】:
以上是关于g.i.cs 文件中的类未更新的主要内容,如果未能解决你的问题,请参考以下文章