簡體   English   中英

如何僅將臟值從客戶端數據傳輸對象傳遞到服務器端域模型

[英]How to pass dirty values only from client side data transfer object to server side domain model

應用程序類型:后端帶有RDBMS的3層Web應用程序

開發平台

客戶端:Silverlight 3 / WPF服務:具有基本Http綁定的WCF Web服務

問題定義:嘗試開發一個具有客戶端業務處理和將數據密集型對象傳遞給客戶端的應用程序。 在客戶端屏幕上查看和編輯對象后,應將它們傳遞到服務器端的服務以進行保存。 問題是由於該數據量很大,因此我不想將整個對象再次傳遞回服務。 例如:-如果我有10行和每行10列的集合,並且僅更新2列。 我應該只能粘貼數據。

問題:這是一種好習慣嗎?如果是,那么實現這一目標的最佳方法是什么?

嘗試了解決方案我嘗試了兩種解決方案1:讓帶有事件委托的setter進行更改通知2:使用自定義數據類型

如果您使用的是由VS自動生成的WCF Web服務,那么您就不得不限制傳輸已知的類; 因此,要傳輸較小的信息塊,您將需要專門為此定義一些新類。 我相信這類對象通常被稱為DTO(數據傳輸對象)。 因此,對於使用10 x 10矩陣的情況,您的DTO可能包含{x,y,value}三元組的列表。

如果您使用的是REST Web服務(並由您自己組成),則可以完全避免使用DTO類,而只需創建一個足以傳達信息的XML模式即可。 例如,具有以下形式的子元素的頂級元素:

<Deltas>
  <Delta x="3" y="9"> ...value subelementgoes here </Delta>
  ... more Delta elements
</Deltas>

然后,您的REST服務必須完成增量更新服務器端數據庫記錄的工作。 對於每種數據類型,您可能需要一個不同的REST URL。

高溫超導

法案

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM