部分方法的内部抽象的级(C#)
-
09-09-2019 - |
题
我正在创造一个抽象的类可能继承一部分类的皇宫SQL类。皇宫SQL类包含了一堆建成的部分方法。有没有办法,我可以实现一个或多个部分的方法的抽象的课吗?我知道这部分方法只能包含的内部分类或结构。我敢肯定还有另一种方式来做到这一点。
这里有更多的细节:
- 我可能有一个数据库表所谓的新闻。如果我创建了一个皇宫的SQL申请文件载有这些表,自动产生的代码生成部分类为新闻。
- 这部分课包含几个部分的方法。
- 我有一个类,我建设,其中包含若干方法,我想利用所有我皇宫SQL课程。
- 这些方法之一是一个部分的方法加到每个皇宫SQL类。我有一个共同的体使用这种方法。而不是添加这种方法为每个分类,我在寻找一种方式来创建一次和继承它与我的基本类继承。
希望这有助于解释更多。
解决方案
部分方法是不可在继承。你可能会增加常规方法的抽象基类,但他们不会自动"对"的部分方法的声明。所以:没有。你当然可以,只要有部分的方法落实到基类。
还注意到,如果常见的代码涉及的东西像的审计(人/时),也可以这样做的压倒一切的 DataContext
's SubmitChanges
方法,并呼吁 GetChangeSet
:
public override void SubmitChanges(ConflictMode failureMode)
{
ChangeSet delta = GetChangeSet();
//... use delta.Updates, delta.Inserts and delta.Deletes
base.SubmitChanges(failureMode);
}
最后,请注意,你也可以指定共同的基类的所有实体在申请(就像这样);你没有做到它的手在每一个分类。
其他提示
我想我明白你想要做什么,但如果没有,让我知道。你可以做你的抽象基类局部和拉的执行情况,你要进入这一类。或者,你可以把你的抽象类和封装的功能,你希望你的孩子类访问。
不隶属于 StackOverflow