Привести объект в объект из производного класса
У меня есть классRecord
это прекрасно работает:
public class Record
{
protected string table;
protected string idcolumn;
public Record(string _table, string _idcol, int _id)
{
table = _table;
idcolumn = _idcol;
Id = _id;
}
}
У меня тоже есть классOrder
что происходит отRecord
, который реализует дополнительные методы, применимые только к записи определенного типа:
class Order : Record
{
public void Start()
{
}
}
В моем приложении у меня есть объектtheRecord
типаRecord
что я хочу бросить наOrder
так что я могу назватьStart
метод на это.
Я попытался разыграть это:
Order r = (Order)theRecord;
но это бросаетInvalidCastException
.
Я думаю, что я мог бы создать новый конструктор дляOrder
это занимаетRecord
, но у меня уже есть объект (который создается путем извлечения записи из базы данных).
Как я могу реализовать это правильно?