В моем классе генерации LINQ у меня есть этот метод:
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Id",
AutoSync=AutoSync.OnInsert, DbType="Int NOT NULL IDENTITY",
IsPrimaryKey=true, IsDbGenerated=true)]
public int Id
{
get
{
return this._Id;
}
set
{
if ((this._Id != value))
{
this.OnIdChanging(value);
this.SendPropertyChanging();
this._Id = value;
this.SendPropertyChanged("Id");
this.OnIdChanged();
}
}
}
В моем закодированном частичном классе я расширяюсь от базового класса. Базовый класс определяет:
public virtual int Id { get; set; }
Концепция заключается в том, что я могу добавить Equals и Hashcode на уровне базового класса, а также некоторые другие функции на уровне базового класса. Проблема в том, что сгенерированные классы (из LINQ-to-SQL) не получают ключевое слово override
, поэтому оно не работает. Если бы у него было override
, я бы все настроил.
Пожалуйста, предложите, как это сделать.