Я знаю, что это тавтология, чтобы иметь статический абстрактный метод, но как я могу сделать что-то вроде этого:Статические абстрактные методы в C#
Base, абстрактный класс:
abstract class QTimerDatabaseObject {
public static abstract QTimerDatabaseObject createFromQTimer(DataRow QTimerRow);
public abstract void saveRow();
}
Пример осуществления (Внутри класс пользователя, который расширяет QTimerDatabaseObject):
public static override QTimerDatabaseObject createFromQTimer(DataRow QTimerRow) {
int ID = (int)QTimerRow["id"];
string Username = QTimerRow["username"].ToString();
string Init = (QTimerRow["init"] ?? "").ToString();
string FirstName = (QTimerRow["FirstName"] ?? "").ToString();
string MiddleInitial = (QTimerRow["Midinit"] ?? "").ToString();
string LastName = (QTimerRow["Lastname"] ?? "").ToString();
string Salutation = (QTimerRow["salutation"] ?? "").ToString();
int RefNum = (int)(QTimerRow["refnum"] ?? -1);
int Timestamp = (int)(QTimerRow["timestamp"] ?? -1);
int DelCount = (int)(QTimerRow["delcount"] ?? 0);
bool IsHidden = (bool)(QTimerRow["hidden"] ?? false);
return new User(ID, Username, Init, FirstName, MiddleInitial, LastName, Salutation, RefNum, Timestamp, DelCount, IsHidden);
}
Как я могу сделать что-то подобное?
См. Этот вопрос: http://stackoverflow.com/questions/823665/c-implement-static-abstract-like-methods – Powerlord
Здесь есть аналогичный вопрос: http://stackoverflow.com/questions/3284/ почему-cant-i-have-abstract-static-methods-in-c – nandokakimoto
Слово «тавтология» не означает, что вы думаете, что это значит. Слово, которое вы ищете, это «оксюморон». –