使用SubSonic生成資料訪問層步驟

2021-05-25 00:25:20 字數 1630 閱讀 2941

subsonic(是乙個orm框架,或者說是乙個**生成器,它的工作流程和一般的orm工具不同,所有的工作全是自動完成,生成完整的資料訪問層類庫,然後在工程中引用即可使用。整個過程很簡單,下面就生成資料訪問層類庫的過程記錄如下:

1、建立乙個c#類庫工程

2、刪除預設生成的class1.cs檔案

3、工程新增三個引用,subsonic.dll(前提是先安裝了subsonic才會有這個)、 

system.web和system.configuration命名空間

4、在工程下建立乙個資料夾,generated

<?xml version="1.0"?>

connectionstring="data source=.;initial catalog=buysalestorage;persist security info=true;user id=sa;"/>

type="subsonic.sqldataprovider, subsonic"

connectionstringname="nowthwin"

generatednamespace="nowthwin"/>

4、在vs中工具選單中選擇 「工具」 -> 「外部工具」 命令,定義乙個外部工具選單項,

標題為subsonic dal(也可以自己命名),

命令為subsonic資料夾的中命令列工具sonic.exe的路徑,

引數為:generate /out generated(生成後的路徑為當前路徑下的generated資料夾。),

初始目錄為:$(projectdir),

並勾選「使用命令視窗」和「提示輸入引數」兩個選項,點確定。

以northwind資料庫為例

/聯合查詢

datatable dt = new select(product.columns.productname, category.columns.categoryname,supplier.columns.companyname).from(product.schema).innerjoin(category.schema).innerjoin(supplier.schema).executedataset().tables[0];

//子查詢

dataset dt = new select().from(product.schema)

.where("productid").in(1, 2, 3, 4, 5)executedataset();

dataset dt = new select().from(product.schema).where(product.columns.categoryid)

.in(

new select("categoryid").from(category.schema).where(category.columns.categoryname).isequalto("produce"))

.executedataset() ;

//聚合函式使用

double result = new

select(aggregate.sum("unitprice*quantity", "productsales"))

.from(orderdetail.schema)

.executescalar();

使用TPC DS工具生成資料

兩種渠道 a 官網 建議直接跳過 ps 官方的包生成sql的時候會報錯,上面這個大神已經修復。操作環境 ubuntu16 a 解壓 unzip tpcds kit master.zipb 編譯 編譯之前請確認依賴環境ok ubuntu 1 sudo apt get install gcc make ...

TPC DS 生成資料

其實,使用 tpc ds 生成系統效能測試的資料,說簡單也簡單,說難,確實也不好做!關鍵是在每一步的操作中,如果遇到了問題,該怎麼樣處理,這個是個問題的關鍵。下面就將生成的步驟簡單描述一下,好記性不如爛筆頭呀!通過以上六步驟,就可以將 tpc ds 資料全部 load 到對應的表中去,也就生成了相應...

Matlab生成資料

有四種基本隨機數函式 rand randi randn 和 randperm。rand 函式返回在 0 和 1 之間均勻分布的實數。例如,r1 rand 1000,1 r1 是乙個含有均勻分布浮點實數的 1000 x 1 的列向量。r1 中的所有值均處於開區間 0,1 內。這些值的直方圖大致上是扁平...