我试图在一个类上创建一个新的类,并且我想重写基类中的属性以删除[Required]。但是,它没有覆盖,而是创建了一个具有相同名称的新属性。那么怎么了,以及如何解决。
namespace admin.models
{
public class BaseClass
{
[Required]
public string id { get; set; }
[Required]
public string name { get; set; }
}
public class NewClass : BaseClass
{
public new string name { get; set; }
}
}
答案 0 :(得分:1)
如果要使其可以覆盖,则需要将方法/属性标记为virtual
。请查看this link了解更多信息。然后使用override
为该属性提供新的实现。
namespace admin.models
{
public class BaseClass
{
[Required]
public string id { get; set; }
[Required]
public virtual string name { get; set; }
}
public class NewClass : BaseClass
{
public override string name { get; set; }
}
}