我有以下數據訪問層(DAL)。我想知道它是否設置正確,還是需要改進?如何正確設計數據訪問層?
public class User
{
}
//Persistence methods
static class UserDataAccess
{
UsersDAL udal = // Choose SQL or FileSystem DAL impl.
InsertUser(User u)
{
// Custom logic , is 'u' valid etc.
udal.Insert(u);
}
}
abstract class UsersDAL
{
GetUserByID();
InsertUser(u);
...
}
// implementaitons of DAL
static class UsersSQLStore : UsersDAL
{
}
static class UsersFileSystemStore : UsersDAL
{
}
我將存儲層從User類中分離出來,以訪問進一步調用任何自定義DAL的方法集合。
DAL執行中使用的static
是否正確?
請提出更正或更好的方法。我沒有很多層編寫代碼的經驗。
如果你不能抽出時間來完整地闡明你的問題(用P1而不是Please),那麼你如何期待某人花時間回答你的問題或幫助你? – 2011-01-06 18:22:04
@喬治,我不知道這是否會傷害某人,但只是爲了節省讀者太多,我經常使用它。相反,我專注於寫下我的榜樣。這並不意味着我不會批評人們的時間和他們的迴應。 – 2011-01-06 18:39:18
你爲什麼要這樣做而不是使用像LLBLGen或Dapper這樣的ORM?沒有必要重新發明輪子。 – 2012-01-24 18:57:32