哪個程序員沒有一個夢?我的夢就是開發一個個人框架,輕量級,無需配置,功能強大但使用簡單的 框架。
具體來說:
(1).配置簡單,簡單,很簡單。(不要xml映射)
(2).輕量級, 很輕,很輕量。(學習成本一定要低)
(3).操作方便,很方便,很方便。(寫框架就是要方便)
(4).數據庫兼容,很兼容,很兼容。(至少要兼容Access和MSSQL)
歲月洗滌中,藉靠項目的經驗,我終於痛定思痛寫下了我的第一個Net2.0的框架--FastObject。
由於慣性和思維定勢的影響,最後FastObject基本上算個7成的ORM框架,我很郁悶,我怎麼就走不出 這個ORM呢?我真的很期待mssql和access是面向對象的數據庫,面向c#的數據庫。
人模自有人樣,FastObject也自有自己的特點(面向中小型項目):
(1).執行sql語句,返回結果可以是無,單值,單個對象,對象集合(如int,User,List<User> )
(2).提供兩種分頁功能:簡單分頁,存儲過程分頁。
(3).兼容Access和Mssql數據庫,可以一鍵切換。(本人獨創!)
(4).使用FastObjectBase這一個類,使用起來太簡單,太方便了。
其功能可以通過IFastObject窺見一斑:
using System;
using System.Collections.Generic;
using System.Text;
namespace FastObject
{
public interface IFastObject
{
T GetSingleData<T>(string sql);//簡單執行sql語句,增,刪,改,查
T GetModel<T>(string sql) where T : new();//獲取單個實體
void Para(params ParaInfo[] paras);//配置參數:Sqlparameter, OledbParameter等DbParameter
List<T> GetModels<T>(string sql) where T : new();獲取實體 集合
List<T> GetModelsByPage<T>(string strWhere, int pageIndex, int pageSize) where T : new();//簡單分頁
List<T> GetModelsByPageStore<T>(string strWhere, string strKey, string strOrder, int pageIndex, int pageSize) where T : new();//存儲過程分 頁,僅支持sqlserver
}
}
/*說明:通過Para()方法我們簡化了代碼量的編寫,減輕了工作量*/