欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

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

 更新時間:2019年12月24日 14:12:28   作者:森大科技  
這篇文章主要介紹了如何使用LinQ To Object把數(shù)組或DataTable中的數(shù)據(jù)進(jìn)行向上匯總,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

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

類似下面的結(jié)構(gòu)

指標(biāo)A 1000
指標(biāo)B 500
指標(biāo)C 500

指標(biāo)A = B+C

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

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

這時候想到了 Linq To Object 這個技術(shù)

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

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

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

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

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

一般我們會這么寫

如果使用 Linq的話

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

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

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

例如最開始的例子

指標(biāo)A 1000
指標(biāo)B 500
指標(biāo)C 500

指標(biāo)A = B+C

這里我定義一個實(shí)體類

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

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

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

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

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

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

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

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • C#?程序通用結(jié)構(gòu)

    C#?程序通用結(jié)構(gòu)

    這篇文章主要介紹了C#?程序通用結(jié)構(gòu),C#?程序由一個或多個文件組成。?每個文件均包含零個或多個命名空間。?一個命名空間包含類、結(jié)構(gòu)、接口、枚舉、委托等類型或其他命名空間,具體相關(guān)內(nèi)容請需要的小伙伴參考下面文章的詳細(xì)內(nèi)容<BR>
    2021-12-12
  • 淺聊一下C#中內(nèi)存映射文件的玩法

    淺聊一下C#中內(nèi)存映射文件的玩法

    內(nèi)存映射文件是怎么玩的,說實(shí)話這東西理論我相信很多朋友都知道,就是將文件映射到進(jìn)程的虛擬地址,說起來很容易,那如何讓大家眼見為實(shí)呢,本文就來和大家簡單聊聊
    2023-06-06
  • C#將布爾類型轉(zhuǎn)換成字節(jié)數(shù)組的方法

    C#將布爾類型轉(zhuǎn)換成字節(jié)數(shù)組的方法

    這篇文章主要介紹了C#將布爾類型轉(zhuǎn)換成字節(jié)數(shù)組的方法,涉及C#中字符串函數(shù)的使用技巧,非常具有實(shí)用價值,需要的朋友可以參考下
    2015-04-04
  • c# asp .net 動態(tài)創(chuàng)建sql數(shù)據(jù)庫表的方法

    c# asp .net 動態(tài)創(chuàng)建sql數(shù)據(jù)庫表的方法

    c# asp .net 動態(tài)創(chuàng)建sql數(shù)據(jù)庫表的方法,需要的朋友可以參考一下
    2013-04-04
  • C#驗(yàn)證控件validator的簡單使用

    C#驗(yàn)證控件validator的簡單使用

    這篇文章主要介紹了C#驗(yàn)證控件validator的簡單使用方法和示例,十分的簡單實(shí)用,有需要的小伙伴可以參考下。
    2015-06-06
  • C#開發(fā)微信門戶及應(yīng)用(4) 關(guān)注用戶列表及詳細(xì)信息管理

    C#開發(fā)微信門戶及應(yīng)用(4) 關(guān)注用戶列表及詳細(xì)信息管理

    這篇文章主要為大家詳細(xì)介紹了C#開發(fā)微信門戶及應(yīng)用第四篇,關(guān)注用戶列表及詳細(xì)信息管理,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-06-06
  • C#使用二分查找法判斷指定字符的方法

    C#使用二分查找法判斷指定字符的方法

    這篇文章主要介紹了C#使用二分查找法判斷指定字符的方法,結(jié)合實(shí)例形式分析了C#二分查找法進(jìn)行字符串查找的定義與使用技巧,需要的朋友可以參考下
    2016-06-06
  • c# this關(guān)鍵字用法代碼詳解

    c# this關(guān)鍵字用法代碼詳解

    在本篇文章里小編給大家整理的是關(guān)于c# this關(guān)鍵字用法以及相關(guān)實(shí)例代碼,有興趣的朋友們可以學(xué)習(xí)下。
    2020-02-02
  • c# 進(jìn)程內(nèi)部的同步

    c# 進(jìn)程內(nèi)部的同步

    這篇文章主要介紹了c# 進(jìn)程內(nèi)部的同步,幫助大家更好的理解和學(xué)習(xí)c#,感興趣的朋友可以了解下
    2020-10-10
  • C#實(shí)現(xiàn)簡單打字小游戲

    C#實(shí)現(xiàn)簡單打字小游戲

    這篇文章主要為大家詳細(xì)介紹了C#實(shí)現(xiàn)簡單打字小游戲,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-05-05

最新評論