寫在前面 最近需要實現自定義報表的功能,其中有一個需求是要計算用戶輸入的公式的值。比如用戶輸入公式:A1 + A2 * 2.4,其中的A1、A2是變量,2.4是常數,我們需要做的是將A1和A2對應的數值帶入表達式,計算出最終結果。需要說明的是,公式是用戶自己輸入的,而不是我們預先設定好的;公式中 ...
什么是ORM框架: ORM即對象關系映射 Object Relational Mapping,簡稱ORM ,是一種為了解決面向對象與關系數據庫存在的互不匹配的現象的技術。簡單的說,ORM是通過使用描述對象和數據庫之間映射的元數據,將程序中的對象自動持久化到關系數據庫中。 自己也用過很多ORM框架,比如微軟的EF,Hibernate。輕量級一點的有Depper等等。這些框架說白了就是讓我們能像操作對 ...
2016-03-26 22:37 7 2493 推薦指數:
寫在前面 最近需要實現自定義報表的功能,其中有一個需求是要計算用戶輸入的公式的值。比如用戶輸入公式:A1 + A2 * 2.4,其中的A1、A2是變量,2.4是常數,我們需要做的是將A1和A2對應的數值帶入表達式,計算出最終結果。需要說明的是,公式是用戶自己輸入的,而不是我們預先設定好的;公式中 ...
之前看到奮斗前輩和時不我待前輩的自己動手寫ORM系列博客,感覺講解的通俗易懂,清晰透徹。作為一個菜鳥,閑來也想着自己寫一個ORM,一來加深自己對 ORM的理解,以求對EF,NHibernate等ROM框架的使用能更加輕車熟路。二來也可在寫ORM之時熟悉反射的應用場景,反射的優缺點,優化方 法 ...
自己動手寫SQL執行引擎 前言 在閱讀了大量關於數據庫的資料后,筆者情不自禁產生了一個造數據庫輪子的想法。來驗證一下自己對於數據庫底層原理的掌握是否牢靠。在筆者的github中給這個database起名為Freedom。 整體結構 既然造輪子,那當然得從前端的網絡協議交互到后端的文件存儲 ...
最近在看反射,突然想寫一個ORM工具,要輕量級的,不要配置文檔,先不管效率,就是一個小工具,在項目初期方便掛數據庫。 我的目標就是在數據庫中建個表,在項目中寫個模型,然后用上這個ORM工具,就能實現數據庫的基本增刪改查。 有想法就動手做,翠花上代碼: 增 ...
前言 公司的orm框架在dapper的基礎上擴展了一套表達式的方法,當時就研究了一下,把學習過程和結果記錄下來,和大家分享。 有人會說重復造輪子沒必要,直接上EF。 從我的角度來看重復造輪子的原因有以下三種: 1、研究造輪子的原理 2、輪子不滿足現在的開發需要 3、裝B 表達式樹 ...
表達式樹的解析. 前言 公司的orm框架在dapper的基礎上擴展了一套表達式的方法,當時就研究了一下,把學習過程和結果記錄下來,和大家分享。 有人會說重復造輪子沒必要,直接上EF。 從我的角度來看重復造輪子的原因有以下三種: 1、研究造輪子 ...
1.准備 環境:Asp.Net MVC5 、EF6 前置知識:反射、使用過EF編寫過Lambda表達式 2.基礎類庫 2.1該高級條件的類型 2.2搜索條件 2.3前端傳來的數據模型格式 3.准備好基礎類庫,然后就可以編寫表達式樹 ...
動念: 最近在學習Android開發,任務驅動是一個好的學習方法。在PC端,使用過對愛奇藝、騰訊、優酷的VIP視頻解析的腳本(油猴+Greasy Fork),也看到過手機端的VIP視頻解析APP(從解析、付費到推廣已形成完整解決方案),於是籍由這個需求,動手寫一個VIP視頻解析的APP來進行 ...