.net Core把一個list集合里面的所有字段的數值匯總

前言:此隨筆僅供自己學習,如有不足還請指出

在很多時候,得到一個list集合,需要把里面的數據匯總,但我又不想寫那么多循環,于是去.net core 官方文檔找有沒有相關方法,很可惜我沒有找到,所以就自己寫了一個方法,用來把list集合里面所有的數值類型都匯總起來。

/// <summary>/// /// </summary>/// <typeparam name="T"></typeparam>/// <param name="lists">數據集</param>/// <returns></returns>public T CollectionSummary<T>(List<T> lists) where T : class, new(){Type entityType = typeof(T);T generic = new T();var entityProperties = entityType.GetProperties();Dictionary<Type, Func<PropertyInfo, object>> map = new Dictionary<Type, Func<PropertyInfo, object>>{{ typeof(double), property=>lists.Sum(item => (double)property.GetValue(item)) },{ typeof(float), property=>lists.Sum(item => (float)property.GetValue(item)) },{ typeof(decimal), property=>lists.Sum(item => (decimal)property.GetValue(item)) },{ typeof(long), property=>lists.Sum(item => (long)property.GetValue(item)) },{ typeof(int), property=>lists.Sum(item => (int)property.GetValue(item)) },{ typeof(short), property=>lists.Sum(item => (short)property.GetValue(item)) },{ typeof(byte), property=>lists.Sum(item => (byte)property.GetValue(item))},};foreach (var property in entityProperties){if (map.ContainsKey(property.PropertyType)){property.SetValue(generic, map[property.PropertyType](property));}}return generic;}

?

轉載于:https://www.cnblogs.com/haixiaocan/p/11163068.html

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/386432.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/386432.shtml
英文地址,請注明出處:http://en.pswp.cn/news/386432.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

openshift for linux

安裝openshift 1、下載地址&#xff1a; https://github.com/openshift/origin/releases 3.11下載&#xff1a; https://github.com/openshift/origin/releases/tag/v3.11.0 https://github.com/openshift/origin/releases/download/v3.11.0/openshift-origin-server-v3.11…

這些Android高級必會知識點你能答出來幾個?含BATJM大廠

前言 首先介紹一下自己&#xff0c;計算機水本&#xff0c;考研與我無緣。之前在帝都某公司算法部實習&#xff0c;公司算大公司吧&#xff0c;然而個人愛好偏開發&#xff0c;大二的時候寫個一個app&#xff0c;主要是用各種框架。 一、掌握架構師筑基必備技能 二、掌握Andr…

Docker kafka

閱讀目錄 一、下載鏡像二、先啟動zookeeper三、啟動kafka四、創建一個topic&#xff08;使用代碼次步可省略&#xff09;五、kafka設置分區數量六、python代碼回到頂部 一、下載鏡像 docker pull wurstmeister/zookeeper docker pull wurstmeister/kafka 回到頂部 二、先啟…

這些年Android面試的那些套路,社招面試心得

前言 說不焦慮其實是假的&#xff0c;因為無論是現在還是最近幾年&#xff0c;很早就有人察覺Android開發的野蠻生長時代已經過去。過去的優勢是市場需要&#xff0c;這個技術少有人有&#xff0c;所以在搶占市場的時候&#xff0c;基本上滿足需要就已經可以了。但是現在&…

flask第一章:項目環境搭建

windows環境pycharmpython3 1、命令提示窗口 1&#xff09;創建項目目錄&#xff1a;mkdir myblog 2&#xff09;cd myblog 3&#xff09;創建虛擬環境&#xff1a;python -m venv myvenv 4&#xff09;激活虛擬環境&#xff1a;venv\Scripts\activate 5&#xff09;安裝flask&…

windows docker 空出C盤 遷移到其他盤

下面是操作方法&#xff1a; 首先關閉docker 關閉所有發行版&#xff1a;wsl --shutdown 將docker-desktop-data導出到D:\SoftwareData\wsl\docker-desktop-data\docker-desktop-data.tar&#xff08;注意&#xff0c;原有的docker images不會一起導出&#xff09;wsl --expo…

安卓開發入門到精通!免費Android高級工程師學習資源,系列篇

前言 2017年進大學開始接觸Android&#xff0c;從剛開始接觸就不斷地聽到Android市場飽和&#xff0c;工作難找等消息。雖然當時也非常迷茫&#xff0c;不過由于第一次深入接觸編程語言&#xff0c;再加上自己的一點興趣&#xff0c;就一直堅持下來了。 到現在要畢業了&#…

安卓開發基礎面試題,9次Android面試經驗總結,面試必備

前言 上回承諾過大家&#xff0c;一定會出 HTTP 的系列文章&#xff0c;今天終于整理完成了。作為一個 web 開發&#xff0c;HTTP 幾乎是天天要打交道的東西&#xff0c;但我發現大部分人對 HTTP 只是淺嘗輒止&#xff0c;對更多的細節及原理就了解不深了&#xff0c;在面試的…

基于TCP的在線聊天程序

在線聊天服務端 import tkinter import tkinter.font as tkFont import socket import threading import time import sys class ServerUI():local127.0.0.1port5505global serverSock;flagFalsedef __init__(self):self.roottkinter.Tk()self.root.title(在線聊天-服務端v1.0)…

Docker安裝Confluence

Docker安裝Confluence 參考鏈接: https://my.oschina.net/u/2289161/blog/1648587 https://hub.docker.com/r/cptactionhank/atlassian-confluence/dockerfile https://my.oschina.net/u/2289161/blog/1647061 https://my.oschina.net/u/2289161/blog/838218 https://hub.…

安卓開發基礎面試題,Android面試必備的集合源碼詳解,附小技巧

去年無疑是 Flutter 技術如火如荼發展的一年。 每一個移動開發者都在為 Flutter 帶來的“快速開發、富有表現力和靈活的 UI、原生性能”的特色和理念而癡狂&#xff0c;從超級 App 到獨立應用&#xff0c;從純 Flutter 到混合棧&#xff0c;開發者們在不同的場景下樂此不疲的探…

『算法』讀書筆記 1.4算法分析 Part1

Chapter 1 本章結構 1.1Java語法 1.2數據抽象 1.3集合類抽象數據類型&#xff1a;背包 (Bags) 、隊列 (Queues) 、棧 (Stacks) 1.4算法分析 1.5連通性問題&#xff0d;Case Study: Union - Find ADT 本節開篇使用了一個ThreeSum程序進行示例&#xff1a; ThreeSum所起到的作用…

JS調用MetaMask調用啟動轉賬

1 、代碼必須跑在nginx下&#xff0c;否則沒有eth對象。 2、可以下載ganache來單跑個私服&#xff0c;然后安裝谷歌metamask瀏覽器插件來實驗 3、賬戶1:0xFA387e41FA471172cC729167EBD4862aA7020D91 賬戶2:0x818DF62ff0bE3B28AE8be25e2e848E10138018B7 4、1000000000000000 …

安卓開發工程師面試題!春招我借這份PDF的復習思路,不吃透都對不起自己

寫在前面 身邊有不少去大廠面試的朋友&#xff0c;其中小金面試字節跳動的經歷很有意義&#xff0c;在這里分享給大家。小金是末流211計算機專業大三本科生&#xff0c;前幾天面試了字節跳動的廣州Android開發實習生。下面是他的面試經歷&#xff0c;還有一些他自己的經驗。 …

合算的日本料理

巨鹿路和那個茂名路路口的《和味》&#xff0c;有預訂的話才98一個人&#xff0c;味道不錯&#xff0c;樓上的桃子MM服務狠好&#xff0c;笑容狠甜。那里的東西味道還是狠正宗的&#xff0c;除了一個色拉不對。那里的清酒和梅酒都不錯&#xff0c;尤其梅酒。生牛肉雖然沒有大漁…

安卓開發必須會的技能!淺談Android消息機制原理,威力加強版

目錄 想要成為一名優秀的Android開發&#xff0c;你需要一份完備的知識體系&#xff0c;在這里&#xff0c;讓我們一起成長為自己所想的那樣。 PagerAdapter 介紹ViwePager 緩存策略ViewPager 布局處理ViewPager 事件處理相關內容 Android 基礎 1.Activity 1、 什么是 Activi…

NuGet 無法連接到遠程服務器-解決方法(轉)

原地址&#xff1a; http://www.lixin.me/blog/2012/03/01/29362 今天打開NuGet的Manage NuGet Packages&#xff0c;顯示“無法連接到遠程服務器”。打開Setting-》Package Manager-》Package Sources。看到里面有一個源&#xff1a;https://go.microsoft.com/fwlink/?LinkID…

安卓開發面試書籍,全世界都在問Android開發涼了嗎?建議收藏

前言 本想今年辭掉工作大干一場&#xff0c;沒想到碰到疫情&#xff0c;家里蹲了3個月…&#xff0c;還好字節能給一次機會。前陣子字節跳動的提前批開始了&#xff0c;看宣傳是說有海量HC&#xff0c;機會多多&#xff0c;本著漲漲面經的心理&#xff0c;然后就投遞了一下杭州…

杭州集訓Day5

下面是Day5的題目&#xff01;&#xff08;其實都咕了好幾天了 1007040210. T1 皇后 XY 的疑難 (1s 512MB) 1.1 題目描述有一個n*n的王國城堡地圖上&#xff0c;皇后XY喜歡看騎士之間的戰斗&#xff0c;于是他準備布置m個騎士&#xff0c;其中每一個騎士都可以向8個方向&#x…

安卓開發面試書籍,每個程序員都必須掌握的8種數據結構!面試必會

前言 本篇文章主要記錄分享我的面試準備過程。 很多朋友問我為什么離職 關于離職原因&#xff0c;馬云有一句經典的話“要么錢沒給到位&#xff0c;要么心委屈了”&#xff0c;想必大家耳熟能詳了&#xff0c;我這里再細說一下我個人離職原因&#xff1a; 工資倒掛&#xf…