freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內容

mygeneration學習筆記(已修改)

2025-09-04 15:52 本頁面
 

【正文】 (轉載)一 使用MyGeneration生成存儲過程和數(shù)據(jù)訪問層代碼二 使用dOOdad提供的通用操作三 dOOdads及生成代碼的一些bug四 在Web Service中使用dOOdad(上)五 在Web Service中使用dOOdad(中)六 在Web Service中使用dOOdad(下)七 dOOdad的String Properties和動態(tài)查詢八 dOOdad提供的數(shù)據(jù)綁定、特殊函數(shù)和事務處理九 在WebService使用dOOdad時,對ToXml/FromXml的一點改進一 使用MyGeneration生成存儲過程和數(shù)據(jù)訪問層代碼MyGenertion是一款不錯的代碼生成ORM代碼生成工具,下面是我學習過程中的一些筆記(總結了一下dOOdads C Quick Reference文檔,還有自己在使用和調試過程中遇到的問題及自己的解決方法),貼出來與大家共享 這篇文章主要講解怎樣用MyGeneration()的dOOdad模板(使用其自帶的模版)來生成代碼,及將這些代碼加入到項目中。1.準備工作: 數(shù)據(jù)庫設計(MS Sql Server): 1). 為每張表設置一個identity列作為主鍵。也可以用GUID或多列作為主鍵。 2). 為每張表增加列名為“RowVersion”的列,數(shù)據(jù)類型設為時間戳(timestamp)。dOOdad將用這列處理并發(fā)。 3). dOOdad只能處理單張表,不能處理多表聯(lián)合查詢。要處理多張表,可以創(chuàng)建視圖,用操作試圖替換多表問題。 4). 在設計數(shù)據(jù)庫和應用程序時,盡可能少地使用null。2. 安裝MyGeneration,添加dOOdad項目到解決方案: 1). 從。 2). 安裝完成后,dOOdad項目位于..\MyGeneration\Architectures\dOOdad\CSharp\\目錄下,有兩個版本,2003和2005,根據(jù)你的需求,選擇一個添加到解決方案中。另外,也將了一些dOOdas的使用步驟和說明。 當然,我們也可以直接打開該項目,編譯生成dll文件,然后在應用程序中添加該程序集引用;但該項目的代碼還存在一些問題,可能要在調試的時候才能發(fā)現(xiàn),這時再修改代碼添加引用就很不方便,所以個人不推薦這樣做。在DbAdapters文件夾下,默認所有的文件的生成操作屬性都是無,即不編譯進項目。分別選擇應用程序的數(shù)據(jù)庫所對應的兩個**,將他們的屬性生成操作改為編譯,這樣就可以編譯進生成的Assembly中。MyGeneration支持的數(shù)據(jù)庫對應的文件: SQL Server (, ) Access (, ) Oracle (, ) PostgreSql (, ) Npgsql Firebird(, ) VistaDB (, ) VistaDB SQLite (, ) MySQL (, ) 3). 現(xiàn)在就可以編譯了。3. 其他需要訪問該Assembly的項目: 1). 2). 為項目添加兩個文件夾: DAL(數(shù)據(jù)訪問層):用于存放MyGeneration創(chuàng)建的Abstract類(下面會講如何使用MyGeneration來生成這些類)。 BLL(業(yè)務邏輯層): 用于存繼承上面的Abstract類的具體類,可由MyGeneration自動生成。4. 使用MyGeneration: 生成CRUD存儲過程: 1) 運行MyGeneration,EditDefaultSetting,設置數(shù)據(jù)庫、編程語言等。 2) 點擊工具欄Template Browser,選擇要創(chuàng)建的存儲過程的模板 可用的模版有: Microsoft SQL Microsoft SQL Stored Procedures Microsoft Access Microsoft Stored Procedures Oracle Stored Procedures PostgreSQL Stored Procedures Firebird Stored Procedures 3) 運行模版,選擇數(shù)據(jù)庫和表(一般選則所有表),單擊確定后,會在OutPut中輸出存儲過程 4) 將生成的存儲過程拷貝到查詢分析器中,然后執(zhí)行向數(shù)據(jù)庫中寫入存儲過程。 為數(shù)據(jù)庫中的表生成DAL Abstract類: 同上,選擇Template BrowserdOOdadC(其他的與此類似)dOOdad Business Entity執(zhí)行模版選擇上面創(chuàng)建的DAL文件夾,設置要生成的類的命名空間和數(shù)據(jù)庫,選擇所有表,然后生成Abstract類。 為數(shù)據(jù)庫中的視圖生成具體類: 選擇dOOdad Business View模版,并將生成的類保存在BLL文件夾,其他同上。 生成具體類(也可以自己寫): 選擇dOOdad Concrete Class模版,其他同上。5. Visual Studio中使用上面生成的資源: 1) 。dOOdad項目中默認的key是dbConnection,也可以修改BusinessEntity類中的_defaultConfig字段的值來修改key的默認值。 另外,dOOdad項目有個問題就是連接字符串并沒有初始化(可能是模版的bug),代碼如下:internalstring_raw=virtualpublicstringConnectionString...{get...{return_raw。}set...{_raw=value。}} 雖然可以在應用程序中手動給屬性ConnectionString賦值,但這樣的話,每個業(yè)務實體在new完之后,都要給ConnectionString賦值,比較繁瑣不好維護;一個比較好的辦法就是在BusinessEntity的構造函數(shù)中對_raw進行初始化(自己寫代碼)。我用的是VS2005,可以用VS2005自動生成配置文件和配置文件的讀取類Settings,然后初始化連接字符串,例如:internal string _raw = 。 2) 可以在上面生成的具體類(Concrete Class)中添加應用程序自己的業(yè)務邏輯,可處理自定義存儲過程和SQL語句等。二 使用dOOdad提供的通用操作初始化準備: Employees emps = new Employees()。 int empID。1. 獲取表中的所有數(shù)據(jù)行: ()。2. 根據(jù)主鍵獲取一行數(shù)據(jù): (empID)。3. 插入一行:()。=Smith。=()。empsID=//插入后返回主鍵值。 上面是dOOdad文檔給出的例子,但是我調用Save方法插入數(shù)據(jù)庫沒有問題,但是獲取主鍵值會拋出異常。默認生成的代碼沒有將ID作為輸出參數(shù),不能轉換成int。更正如下://在dOOdad生成業(yè)務實體抽象類Employees的GetInsertCommand()方法中加一條語句:CreateParameters(cmd)。[@ID].Direction=//要加入的語句returncmd。4. 刪除一行: //先定位到要刪除的行( 設置當前行) ()。 ()。5. 更新一行: //先定位到要更新的行 = Jones。 ()。6. 獲取表中的行數(shù): 。7. 遍歷表中所有的數(shù)據(jù)行:if(0)...{()。//使當前
點擊復制文檔內容
研究報告相關推薦
文庫吧 www.dybbs8.com
公安備案圖鄂ICP備17016276號-1