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

正文內(nèi)容

用友u9-ubf應用開發(fā)手冊-文庫吧資料

2024-10-27 17:37本頁面
  

【正文】 and Name like Name)。 按名稱綁定:此時必須名字都為“ Name” EntityQuery q = new EntityQuery()。 (new OqlParam(TestParamBinding))。 方式 2 : . FindAll (ID=aaa and Name=bbb, new OqlParam(1234567890), new OqlParam(forTest)) 參數(shù)綁定 目前對查詢參數(shù)的綁定支持 2 種方式:按順序綁定和按名稱綁定,按順序綁定要求綁定的參數(shù)和 oql 語句的參數(shù)個數(shù)必須一致,按名稱綁定要求綁定的參數(shù)和 oql 語句的參數(shù)名字必須一致,下面 2 段代碼簡單示范如果使用: 按順序綁定:此時必須有 2 個 OqlParam EntityQuery q = new EntityQuery()。 (new OqlParam(forTest))。 參數(shù)的使用 查詢參數(shù)有 2 種使用 方式: 方式 1: EntityDataQuery q = ()。 (new OqlParam(TestParamBinding))。 ? 返回 實體集合: FindAll 全 OQL 方式 (注意,因為此處返回的是實體的集合,所以 Select 要寫全部的屬性名稱,最好不要用 select * ,因為現(xiàn)在 Select *,對 *號的解析是依賴表結構而不是實體結構 ) (select ID,Name,Code, CreatedOn, CreatedBy, ModifiedOn, ModifiedBy, SysVersion from Association::Yel_Ass1to1_A where ID not in (select ID from Association::Yel_Ass1to1_B) order by ID)。 (ID = ID‖)。 Yel_Ass1toN_A a = (Yel_Ass1toN_A)()。 EntityQuery eq = new EntityQuery()。 EntityQuery ? 創(chuàng)建方式: 有 2 種方式創(chuàng)建 EntityQuery 通過 Entity 對象: EntityQuery eq = ()。 ? 返回單值 : (select Max(ID) where id 111)。 ? 返回 IDataReader : FindDataReader 全 OQL 方式 IDataReader dr = (select ID,Name,Code from Association::Yel_1to1Self)。 ? 返回 DataSet: FindDataSet 全 OQL 方式 DataSet ds = (select ID,Name,Code from Association::Yel_1to1Self)。 通過 EntityFullName: EntityDataQuery q = new EntityDataQuery()。 ? 對一對多組合的子對象作集合 Clear 操作,怎么沒有刪除 需要注意,實體的刪除動作只能用 Remove 方法, Clear 是集合本身的方法,不是持久層提供的刪除自對象的方法 實體的查詢 BE 的查詢這塊主要有 3 個查詢類, EntityDataQuery, EntityQuery 和 EntityViewQuery,EntityDataQuery 主要用于希望返回結果是 IDataReader, DataSet,單值的情況 EntityQuery 主要用于希望返回的結果是實體,實體集合 EntityViewQuery 主要用于對視圖的操作,與前 2 種不同的是,需要自己處理數(shù)據(jù)庫的連接。A ? 對于一對多組合,我怎樣知道刪除的子對象 我們知道,對于一對多的情況,當我們對子對象調用 Remove 方法時,該對象會從當前的集合中移出,即子對象的集合存放的是有效的對象,是新建和修改的對象。 ()。 (0)。 bList = 。 + + 39。 ()。, null)。 } ? 主從實體: 刪主實體會自動全部刪除從實體 using (ISession session = ()) { objA = (ID = 39。 if(obj!=null){ ()。 ()。 bList[0].Name_B_Com1cN = aaa。, null)。 } ? 主從實體: ? 1 對 1 ? 1 對多 using (ISession session = ()) { objA = (ID = 39。 } ? 特殊做法 遇到一些特殊情況,需要外面?zhèn)鬟M的實體 時,需要顯式調用 session. Modify(obj),不推薦 using (ISession session = ()) { (obj)。 if(obj!=null){ = new name。 ? 查實體集合 FindAll 方法是直接從數(shù)據(jù)庫取,參數(shù)為 OQL 語句 list = ()。 } 查詢實體 (關于 OQL 和參數(shù)的用 法,見實體查詢這個章節(jié) ) ? 查單個實體:下面的操作為查詢一條ID為“111”的紀錄 FindByID 方法是先從緩存里面取,緩存沒有再去數(shù)據(jù)庫取 , A_Com1cN obj = . FindByID(111)。 = 555。 = 444。 = 333。 = 222。 = 111。 B_Com1cN objB。 } ? 1 對多: 其中 A_Com1cN 為主實體, B_Com1cN 為非主實體,注意紅字的寫法。 = objB。 objB = (objA)。 = 1000。 B_Com1c1 objB。 ()。 = 111。這種做法很特殊,需要顯式在一進入 sesssion 時調用 (obj),不推薦 A_Ass1to1 obj = new A_Ass1to1()。 ... ()。))。 } ((ID = 39。 (objA)。 ? DeList(IEntity entity) 將 entity 從 session 中移出 using (ISession s = ()) { objA = ()。 + + 39。 ()。 = Test。 ()。 ()。 //提交更改,但只是 Session2范圍內(nèi)的修改更新 } ()。 } 這里有幾個需要提醒開發(fā)人員注意的事項: ? OriginalData 刷新的時機: 對于新建和修改操作, OriginalData 是在 OnInserted/OnUpdated 方法運行完后刷新,對于查詢, OriginalData 是在查詢后刷新,對于刪除, OriginalData 沒什么意義,取決于刪除對象的加載方式,簡單說,就是在 OnSetDefaultValue/ OnInserting/ OnInserted 中,新建對象的OriginalData 是一個 id 為 0 的空實體對象,在 OnSetDefaultValue/ OnUpdating / OnUpdated 中,修改對象的 OriginalData 是舊對象 ? 為什么我訪問某實體對象的 OriginalData 的屬性為空 首先,看 OriginalData 對象的 ID,如果為 0,表示是一個空對象,所有的屬性為默認值,請參考 OriginalData 刷新的時機判斷這個訪問操作是不是新建,這個對象是標準的查詢出來的還是通過 CopyTo 的方式構造的(實體基類的 CopyTo 不涉及 OriginalData) 如果 OriginalData 有有效的 ID,檢查這個對象的加載方式,看看是不是特殊的加載 方式引起屬性為空 ? OriginalData 的關聯(lián)對象 OriginalData 和 CopyTo 方法很類似,只完整實現(xiàn)了對基本屬性的拷貝,對于關聯(lián)實體,實際上是不拷貝的,這樣,出現(xiàn) 的訪問方式,對 bEntity,是懶加載上來的 實體的狀態(tài) SysState 實體的狀態(tài),為枚舉對象,開發(fā)人員主要關心以下 4 個枚舉值: Inserted, Updated, Deleted,Unchanged,分別對應實體的新建,修改,刪除,不變化 (查詢返回的初始狀態(tài) ) 是否需要持久 化 NeedPersistable NeedPersistable 表示這個對象是否需要持久化,如果為 false,則這個對象將不會參與持久化 Session 基本概念和使用方式 在現(xiàn)在 UBF 中, Session 的本意是 work unit,即持久層的一個邊界,非常輕,主要用作批量提交,并標識這次批量提交的邊界。 ()。 = OldValue。 = aaa。 = 123。 = NewValue。 ()。 示例: using (ISession s = ()) { Yel_Ass1to1_A a = ()。由于強類型的方式使用 BE 比較簡單 直觀,在生成實體代碼時,會提供強類型的訪問方式,所以,開發(fā)人員一般不會直接訪問實體的內(nèi)部數(shù)據(jù) 實體的 CopyTo 為了支持實體數(shù)據(jù)的復制,可以利用 ICopyable 接口,基類 Entity 支持該接口,可以通過實例方法 CopyTo,將實體中的數(shù)據(jù)復制給 target。 實體的對外結構基本組成 每一個強類型的實體都有以下幾個類: 實體 類,如 A_Ass1to1 實體的 Key(強類型的 EntityKey) : 實體的查詢類 Finder: 實體的強類型集合 EntityList: 實體的資源屬性和強類型訪問屬性的輔助類 實體弱類型的 EntityKey 弱類型 EntityKey 是 BusinessEntity 的內(nèi)部類,也是強類型 EntityKey 的基類,主要涉及標識一個實體兩個關鍵的屬性: ID 和 EntityType,并對外提供一個 GetEntity()的公開方法 實體內(nèi)部數(shù)據(jù)存儲 在實體內(nèi)部,自身的數(shù)據(jù)為基本類型,保存在集合 InnerData 中,關聯(lián)數(shù)據(jù)為對象或集合類型,保存在集合 InnerRelation中。 實體開發(fā)框架 實體 ( BE) 的基本概念 BE,即 Business Entity,指領域模型中的業(yè)務數(shù)據(jù)對象,如:訂單頭,客戶,地址,國家等 BE 的設計工作通過 UBF Studio 完成。而不同的企業(yè)不能對應相同的數(shù)據(jù)庫。 ? 任何符合國際化異??蚣艿漠惓?UBF 可以將其透明地傳遞到遠端。 ? 開放的體系結構,可擴展定時策略、可執(zhí)行邏輯接口等等。 ? 支持即時啟動策略 ? 每個定時單位可以按區(qū)間,周期間隔,離散時間點集合,定點時間四種策略指定。 ? 任務定時調度,可實時 查詢請求執(zhí)行狀態(tài),任務定義持久化。 異步調度引擎 調度引擎用于滿足后臺的定時任務需求。 ? 所有這些事件處理器的行為都可以通過屬性 (Attribute)或是訂閱參數(shù)來指明。 ? 事件處理器可以被同步或異步地調用。 ? 事件訂閱可以是臨時或持久的。當所有者已經(jīng)擁有鎖的情況加,可以通過加獨占鎖進行鎖升級,但有可能加鎖失敗。獨占鎖僅允許一個所有者加鎖,以用于變更數(shù)據(jù)定意圖。 悲觀鎖支持共享和獨占(讀 /寫)兩種鎖定級別。 UBF
點擊復制文檔內(nèi)容
公司管理相關推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1