virtual 关键字用于修饰方法、属性、索引器或事件声明,并且允许在派生类中重写这些对象。例如,此方法可被任何继承它的类重写。
public virtual double Area()
{
return x * y;
}
备注:
调用虚方法时,将为重写成员检查该对象的运行时类型。将调用大部分派生类中的该重写成员,如果没有派生类重写该成员,则它可能是原始成员。
默认情况下,方法是非虚拟的。不能重写非虚方法。
virtual 修饰符不能与 static、abstract, private 或 override 修饰符一起使用。
除了声明和调用语法不同外,虚拟属性的行为与抽象方法一样。
在静态属性上使用 virtual 修饰符是错误的。
通过包括使用 override 修饰符的属性声明,可在派生类中重写虚拟继承属性。
在EF里面,对于一个类中的成员来说,如果该成员是复杂类型的成员,那么就必需使用virtual.但对于string等其他普通类型的成员来说,就没有必要来使用。
对于数据库中会出现哪些字段,就需要看Map里面的映射到底有哪些。