這可能是一個主觀問題,但我想知道人們覺得什麼是對象的保存或刪除方法的行爲的最佳模式?什麼類型的方法用於對象刪除或保存?
當你設置一個包含Db記錄信息的類時,我通常最終會將對象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;
}
VS此:
public int Delete()
{
if (this.objectID == null || this.objectID == -1) { throw new exNotDbObject() }
int retVal = dataLayer.DeleteObj(this.objectID);
return retVal;
}
我不認爲讓你的對象對自己的持久性負責是不錯的做法 – hackerhasid 2010-01-11 17:49:35