日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

关于WCF中间层服务器端DTO属性更新如何同步回仓储实体的处理方式

發布時間:2024/1/17 编程问答 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 关于WCF中间层服务器端DTO属性更新如何同步回仓储实体的处理方式 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

中間層建立上下文錄制對象及錄制屬性。如下范例

1 public bool CancelChangeEvent(ClientContext context, Dbs dbs, int encounterId, int transferId, int sickbedId, ref DataManagerContext dataContext) 2 { 3 DataManager manager; 4 IList<IEntityWithKey> recordedlist; 5 6 recordedlist = new List<IEntityWithKey>() { dtos, dtoEncounter }; 7 manager = DataManagerFactory.Create(recordedlist); 8 manager.RecordProperty<DtoTransfer>(a => a.IsTransferedOverTo); 9 manager.RecordProperty<DtoMonitorEvent>(a => a.RecorderId, a => a.EventDateTime, a => a.EndOn, a => a.Description, a => a.IxsEventII, a => a.RowVersion); 10 manager.RecordProperty<DtoEncounter>(a => a.StatusCodeId, a => a.SickBedOrganizationId, a => a.ResponsibleDepartmentId, a => a.IsTransferred, a => a.BabyFlag, a => a.SeqNoText, a => a.MotherEncounterId, a => a.RowVersion); 11 ... ... 12 13 manager.UpdateContext(dataContext); 14 return true; 15 }

倉儲對應的方法需要將返回的上下文應用到實體對應的DTO上(上下文已根據DTO主鍵建立屬性鍵值對),范例代碼如下

1 public bool CancelChangeEvent(ITransfer entity, int newsickbedId) 2 { 3 DataManagerContext dataContext = new DataManagerContext(); 4 5 using (ServiceProxy<ITransferSvc> obj = GetObject<ITransferSvc>()) 6 { 7 DtoTransfer dto = DtoAccessor.GetFrom<DtoTransfer>(entity).GetDto(); 8 DtoEncounter dtoEncounter = DtoAccessor.GetFrom<DtoEncounter>(entity.Owner).GetDto(); 9 10 ret = obj.Service.CancelChangeEvent(Context, DbsKind.GetDbs(), entity.Owner.Id, entity.Id, newsickbedId, ref dataContext); 11 if (ret) 12 { 13 DataManager dataManager = DataManagerFactory.Create(dtoEncounter); 14 dataManager.ApplyContext(dataContext); 15 DtoAccessor.GetFrom<DtoEncounter>(entity.Owner).SetDto(dtoEncounter); 16 17 dataManager = DataManagerFactory.Create(dto); 18 dataManager.ApplyContext(dataContext); 19 } 20 } 21 return true; 22 }

轉載于:https://www.cnblogs.com/chriskwok/p/3600796.html

總結

以上是生活随笔為你收集整理的关于WCF中间层服务器端DTO属性更新如何同步回仓储实体的处理方式的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。