久久久精品一区ed2k-女人被男人叉到高潮的视频-中文字幕乱码一区久久麻豆樱花-俄罗斯熟妇真实视频

如何使用LinQToObject把數(shù)組或DataTable中的數(shù)據(jù)進行向上匯總

最近搞造價系統(tǒng)時遇到一些需要匯總的指標數(shù)據(jù)

“專業(yè)、務實、高效、創(chuàng)新、把客戶的事當成自己的事”是我們每一個人一直以來堅持追求的企業(yè)文化。 成都創(chuàng)新互聯(lián)是您可以信賴的網(wǎng)站建設服務商、專業(yè)的互聯(lián)網(wǎng)服務提供商! 專注于成都做網(wǎng)站、網(wǎng)站設計、軟件開發(fā)、設計服務業(yè)務。我們始終堅持以客戶需求為導向,結合用戶體驗與視覺傳達,提供有針對性的項目解決方案,提供專業(yè)性的建議,創(chuàng)新互聯(lián)建站將不斷地超越自我,追逐市場,引領市場!

類似下面的結構

指標A 1000
指標B 500
指標C 500

指標A = B+C

當我們需要對這些數(shù)值進行校驗時,實現(xiàn)的方法有很多種,數(shù)據(jù)庫里寫存儲過程去更新每行數(shù)據(jù),

或者我們在程序中遍歷等等,但用起來都挺煩瑣的。

這時候想到了 Linq To Object 這個技術

簡單說下 Linq 它是.Net Framework 3.5 引入的新技術

它允許編寫C#或者Visual Basic代碼以查詢數(shù)據(jù)庫相同的方式操作內存數(shù)據(jù)。

主要 有幾點好處 簡單 和 SQL 的語法差不多舉個例子來說

這里有兩個數(shù)組 需要你找出 A 與 B 都存在的元素

A=int[]{1,2,3,4,5,6,7,8,0}; B=int[]{2,4,7,8,9}

一般我們會這么寫

如何使用LinQ To Object把數(shù)組或DataTable中的數(shù)據(jù)進行向上匯總

如果使用 Linq的話

如何使用LinQ To Object把數(shù)組或DataTable中的數(shù)據(jù)進行向上匯總

看起來非常的清爽,而且和SQL的語法類似 我們可以快速的掌握。

至于具體的語法和介紹 大家可以自行的查詢http://msdn.microsoft.com/zh-cn/library/vstudio/bb397926.aspx

說回來 在我們的項目中如何使用呢?

例如最開始的例子

指標A 1000
指標B 500
指標C 500

指標A = B+C

這里我定義一個實體類

class CIndex{
string CIID;
string ParentCIID;
double Cost;
}

獲取所有指標的數(shù)據(jù)到一個數(shù)組中。 listIndexs

注意例子中的指標要按樹形順序排列好,然后我們從最底下的子節(jié)點往上更新數(shù)據(jù),

這樣可以避免先更新了父節(jié)點后,才發(fā)現(xiàn)子節(jié)點數(shù)據(jù)不對的問題。

對數(shù)組從最后面的元素開始遍歷

如何使用LinQ To Object把數(shù)組或DataTable中的數(shù)據(jù)進行向上匯總

這樣就能很簡單的完成對父子節(jié)點的計算。

項目中我們很多時候都會用到 DataTable 那么Linq這時候又該怎么處理呢?

如何使用LinQ To Object把數(shù)組或DataTable中的數(shù)據(jù)進行向上匯總

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持創(chuàng)新互聯(lián)。

本文名稱:如何使用LinQToObject把數(shù)組或DataTable中的數(shù)據(jù)進行向上匯總
瀏覽地址:http://sd-ha.com/article16/gcjidg.html

成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站維護標簽優(yōu)化、Google、面包屑導航、動態(tài)網(wǎng)站、響應式網(wǎng)站

廣告

聲明:本網(wǎng)站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)

網(wǎng)站托管運營