相关疑难解决方法(0)

虚拟类中的抽象方法

我有一个具有大量虚方法的ac #Class,其中一些方法基本上是抽象的(它们完全在子类中实现,基类是空的).

为了让它进行编译,我在基类中抛出一个InvalidOperationException,并对应该做什么做出评论.这只是感觉很脏.

有没有更好的方法来设计我的课程?

编辑:对于将在加拿大运行的应用程序的中间层,一半的方法是通用的,因此是虚拟的.一半的方法都是省特定的.

Public class PersonComponent() 
{

 public GetPersonById(Guid id) {
  //Code to get person - same for all provinces
 }

 Public virtual DeletePerson(Guid id) {
  //Common code
 }

 Public virtual UpdatePerson(Person p) {
  throw new InvalidOperation("I wanna be abstract");
 }

Public Class ABPersonComponent : PersonComponent
{
    public override DeletePerson(Guid id) 
    {
       //alberta specific delete code
    }

    public override UpdatePerson(Person p) 
    {
       //alberta specific update codecode
    }

}
Run Code Online (Sandbox Code Playgroud)

希望这是有道理的

c# oop virtual abstract

4
推荐指数
1
解决办法
3195
查看次数

标签 统计

abstract ×1

c# ×1

oop ×1

virtual ×1