Частичные методы не могут использоваться для наследования. Вы можете добавить обычные методы к абстрактному базовому классу, но они не будут автоматически «сопрягаться» с частичными объявлениями методов. Итак: нет. Конечно, вы можете просто вызвать частичный вызов реализации метода в базовом классе.
Также обратите внимание, что если общий код относится к таким вещам, как аудит (кто / когда), вы также можете сделать это, переопределив метод DataContext
'SubmitChanges
и вызвав GetChangeSet
:
public override void SubmitChanges(ConflictMode failureMode)
{
ChangeSet delta = GetChangeSet();
//... use delta.Updates, delta.Inserts and delta.Deletes
base.SubmitChanges(failureMode);
}
Наконец, обратите внимание, что вы также можете указать общий базовый класс для всех ваших сущностей в dbml (, например, ); вам не нужно делать это вручную в каждом частичном классе.