Это может быть субъективный вопрос, но я хочу знать, что люди считают лучшим примером поведения методов сохранения или удаления объекта?
Когда вы устанавливаете класс, который будет содержать информацию о записи в БД, я обычно в конечном итоге объявляю методы объектов Delete () и Save () как void. Поскольку эти методы обычно выполняют прямое действие над другими свойствами объекта, нужно ли нам возвращать что-либо еще, чтобы подтвердить действие? При сбое я просто позволил структуре обработки ошибок или коду реализации обработать любое исключение.
Я видел много объектов, которые отправляют обратно строки, затронутые int или другим возвратом, каково «экспертное» мнение по этому поводу?
т.е. это:
public void Delete()
{
if (this.objectID == null || this.objectID == -1) { throw new exNotDbObject() }
//Do dB operations
this.objectID = null;
this.TimeRetrievedFromDb = null;
}
против этого:
public int Delete()
{
if (this.objectID == null || this.objectID == -1) { throw new exNotDbObject() }
int retVal = dataLayer.DeleteObj(this.objectID);
return retVal;
}