本文的演示需要先完成上一篇文章中的演示:《Rafy 領域實體框架示例(1) - 轉換傳統三層應用程序》。在完成改造傳統的三層系統之后,本文將講解使用 Rafy 實體框架后帶來的一些常用功能。
數據庫自動生成
在程序轉換轉換完畢后。由於已經配置好數據庫的連接字符串,所以直接運行整個程序,Rafy 會同時生成對應的數據庫、表、字段,以及相應的外鍵關系等。
該庫滿足數據庫的第三范式要求。同時,開發過程中新添加的屬性,也會每次自動同步到這個數據庫中。
以下是服裝管理系統生成的數據庫結構圖:
監控執行的 SQL 語句
框架可以記錄所有運行過程中執行的 Sql 語句及相關日志。這對於開發人員做系統調試、性能優化提供了較好的幫助。
該功能需要手動打開。在配置文件中添加以下配置:
<configuration>
<appSettings>
<!--如果是監聽應用程序所有的 SQL 語句,請打開以下配置-->
<add key="SQL_TRACE_FILE" value="D:\SQLTraceLog.txt"/>
</appSettings>
</configuration>
配置項的值是用於記錄日志的文件的地址。這時,我們再運行整個程序,就會發現 D 盤下的 SQLTraceLog.txt 文件已經開始記錄整個程序所有執行的 SQL 了。
記錄的格式如下:
2013/10/30 10:23:42
Database: ClothesSys
SELECT [User].[Id],[User].[Name],[User].[Password],[User].[UserName]
FROM [User]
WHERE [User].[UserName] = @p0
ORDER BY [User].[Id] ASC
Parameters:"rafy"
領域實體關系圖
在安裝了 RafySDK 后,可以使用領域實體關系圖,以圖形的形式來描述指定的部分實體及實體間的關系。
例如,我們在 CS 項目中 Entities 文件夾內,添加新項,選擇 Rafy -> Domain Model Designer,命名為 CS Model.odml:
在打開的文檔中點擊“添加實體類”按鈕,在彈出的窗口中選擇除基類外所有的領域實體類:
點擊確定后,圖中便自動為所選實體生成了對應的關系圖,稍加調整即可:
在圖中可以清晰地看出:Bill 與 Sell 是組合關系,而其它的實體間的引用關系的名稱、可空性等。這些關系,與我們在轉換之初的 UML 設計是完全一致的。
更詳細的功能說明,請試用並參見發布的說明文檔。下一篇將會說明如何把應用程序,從當前直接連接數據庫的單機版結構,快速部署為 Client-Server-Database 的分布式結構。
框架發布地址:《Rafy 發布地址》。