两个类均位于不同的类文件中,但位于同一文件夹中。这是我的代码。
public class Person
{
public String FirstName { get; set; }
public String LastName { get; set; }
public String Email { get; set; }
public DateTime DateOfBirth { get; set; }
}
public class Zodiac : Person
{
public Zodiac()
{
//person.DateOfBirth = DateTime.Now;
DateOfBirth = DateTime.Now;// this doesn't work either
}
//Person person = new Person();
}
即使我使用实例化,即使它们位于同一文件夹中也无法使用。它给了我这个错误。
严重性代码描述项目文件行抑制状态 错误CS0103当前名称'DateOfBirth'不存在 上下文PersonExercise D:\ Exercises \ PersonExercise \ PersonExercise \ Models \ Zodiac.cs 12有效
如果我使用实例化,它会给我这个错误。
严重性代码描述项目文件行抑制状态 错误CS1061“人员”不包含“日期出生”的定义 并且没有可访问的扩展方法“ DateOfBirth”接受第一个 可以找到类型为“ Person”的参数(您是否缺少使用 指令或汇编 参考?)PersonExercise D:\ Exercises \ PersonExercise \ PersonExercise \ Models \ Zodiac.cs 12有效
以下是有关该问题的屏幕截图:
答案 0 :(得分:0)
看起来有些错字+无法完全理解继承。检查以下代码中的注释。
public class Zodiac : Person
{
public Zodiac()
{
person.DateOfBirth = DateTime.Now; // This would not work, you have not declared an object named "person", note it is commented.
DateOfBirth = Datetime.Now;// this doesn't work. <-- Indeed, there is a typo
DateOfBirth = DateTime.Now;// this would work, note the uppercase Time.
}
//Person person = new Person();
}
答案 1 :(得分:0)
我注意到代码的问题是我放在属性 Person 内的 Persons 类中。它可能是拼写错误。
代码如下:
public class Person
{
public class Persons //I've remove this class and the code runs perfectly.
{
public String FirstName { get; set; }
public String LastName { get; set; }
public String Email { get; set; }
public DateTime DateOfBirth { get; set; }
}
}
就像我将一个类嵌套在一个类中一样。这让我感到困惑。\