有时候会出现需要将一个集合分成所干个集合,依次再对每组集合进行处理,想了想,用 Linq 处理就很方便

var times = Math.Ceiling((double)lis.Count() / );
var temp1 = lis.Skip().Take(); //第一组
var temp2 = lis.Skip().Take(); //第二组
for (int i = ; i < times; i++)
{
//每一组
var ary = lis.Skip(i * ).Take();
//处理每小组数据 }
//合并集合
var list = temp1.union(temp2).ToList();

对于Web程序而言,一般情况需要的一些设备字段之类的往往是写在config 配置文件中,通过 ConfigurationManager.AppSettings["XXX"]读取,这样使用无可厚非,当然有些项目来说,配置的参数相对来说比较多,直接放在web.config中可能不易读,对于这种情况,将其全部写在xml文件中,统一管理,也比较方便,这两种方式,殊途同归。对于XML文件的读写,比较基础。

比如新建一xml 文件,将对应数据配置到XML中后,然后通过Linq to xml 进行读取操作,不怎么高大上

        //取值
public static Dictionary<string, string> GetValue()
{
Dictionary<string, string> des = new Dictionary<string, string>();
try
{
var obj = new object();
lock (obj)
{
var exePath = AppDomain.CurrentDomain.BaseDirectory.ToString();
string Path = exePath + "Config" + "\\ArcConfig.xml";
XElement root = XElement.Load(Path);
var quests = from c in root.Elements() select c;
foreach (var item in quests)
{
des.Add(item.Name.LocalName, item.Value);
}
return des;
}
}
catch (Exception ex)
{
LogHelper.ErrLogQueue.Enqueue(ex.Message + "--" + ex.StackTrace);
return des;
}
}

拿到字典值后,给字段对应赋值即可,这里赋值可以为成员字段,也可以放在内部缓存中

        //Cache赋值-内存
public static void SetConfigValue(Dictionary<string, string> dic)
{
try
{
//映射成员字段//PropertyInfo[] propertyInfos =GetType().GetProperties();
foreach (var item in dic)
{
//item.SetValue(this, dic[item.Name]); --遍历
CacheHelper.SetCache(item.Key, item.Value);
}
}
catch (Exception ex)
{
LogHelper.ErrLogQueue.Enqueue(ex.Message + "---" + ex.StackTrace);
}
}

如此 比较轻便 灵活,使用的时候比较方便,另外配置文件放在一起,也比较便于管理

List 拆分集合与 读写XML配置文件的更多相关文章

  1. C#中读写Xml配置文件常用方法工具类

    场景 有时需要使用配置文件保存一些配置的属性,使其在下次打开时设置仍然生效. 这里以对xml配置文件的读写为例. 1.读取XML配置文. 2.写入XML配置文件. 3.匹配 XPath 表达式的第一个 ...

  2. Spring根据XML配置文件 p名称空间注入属性(property后出现,简便但只针对基本数据类型管用,自定义集合等引用类型无效)

    要生成对象并通过名称空间注入属性的类 代码如下: package com.swift; public class User { private String userName; public void ...

  3. struts2中struts.xml配置文件详解【未整理】

    1.    深入Struts2的配置文件 本部分主要介绍struts.xml的常用配置. 1.1.    包配置: Struts2框架中核心组件就是Action.拦截器等,Struts2框架使用包来管 ...

  4. Java 读写XML文件 API--org.dom4j

    om4j是一个Java的XML API,类似于jdom,用来读写XML文件的.dom4j是一个十分优秀的JavaXML API,具有性能优异.功能强大和极其易使用的特点,同时它也是一个开放源代码的软件 ...

  5. Fixflow引擎解析(三)(模型) - 创建EMF模型来读写XML文件

    Fixflow引擎解析(四)(模型) - 通过EMF扩展BPMN2.0元素 Fixflow引擎解析(三)(模型) - 创建EMF模型来读写XML文件 Fixflow引擎解析(二)(模型) - BPMN ...

  6. C#操作Xml:通过XmlDocument读写Xml文档

    什么是Xml? Xml是扩展标记语言的简写,是一种开发的文本格式.关于它的更多情况可以通过w3组织了解http://www.w3.org/TR/1998/REC-xml-19980210.如果你不知道 ...

  7. XML配置文件的命名空间与Spring配置文件中的头

    一直以来,写Spring配置文件,都是把其他配置文件的头拷贝过来,最多改改版本号,也不清楚哪些是需要的,到底是干嘛的.今天整理一下,拒绝再无脑copy. 一.Spring配置文件常见的配置头 < ...

  8. Maven的pom.xml配置文件详解

    Maven简述 Maven项目对象模型(POM),可以通过一小段描述信息来管理项目的构建,报告和文档的软件项目管理工具. Maven 除了以程序构建能力为特色之外,还提供高级项目管理工具.由于 Mav ...

  9. struts2_struts.xml配置文件讲解

    1.bean Bean详细讲解:https://www.cnblogs.com/lulu638/p/4340703.html 2.constant constant属性配置,可配置的属性可以参考def ...

随机推荐

  1. 源码分析-----ThreadPoolExecutor

    创建一个线程池: import time from concurrent.futures import ProcessPoolExecutor, as_completed def get_html(n ...

  2. Key ssd_300_vgg/block3_box/L2Normalization/gamma not found in checkpoint的解决方案

    在Tensorflow下使用SSD模型训练自己的数据集时,经过查找很多博客资料,已经成功训练出来了自己的模型,但就是在测试自己模型效果的时候,出现了如下错误. 2019-10-27 14:47:12. ...

  3. 基于FlexBox的无约束自适应

    全手打原创,转载请标明出处:https://www.cnblogs.com/dreamsqin/p/11972664.html,多谢,=.=~ 一.背景描述   对于通用型带过滤条件的列表查询项目中, ...

  4. VMWare 下安装 Windows XP

    准备工作 安装VMware 我这里安装的是 VMware-workstation-full-12.1.1-3770994.exe 下载Windows XP with SP3 从网上下载的MSDN版本X ...

  5. C#中的Json序列化

    核心思想: 利用nuget下载“Newtonsoft.Json”包,调用其中的方法可以json化各种对象.反序列化调用“JsonConvert.DeserializeObject<DataTab ...

  6. JSON,全称:JavaScript Object Notation,作为一个常见的轻量级的数据交换格

    JSON,全称:JavaScript Object Notation,作为一个常见的轻量级的数据交换格式,应该在一个程序员的开发生涯中是常接触的.简洁和清晰的层次结构使得 JSON 成为理想的数据交换 ...

  7. Golang中设置函数默认参数的优雅实现

    在Golang中,我们经常碰到要设置一个函数的默认值,或者说我定义了参数值,但是又不想传递值,这个在python或php一类的语言中很好实现,但Golang中好像这种方法又不行.今天在看Grpc源码时 ...

  8. MTSC2019-腾讯WeTest独家揭秘移动游戏测试和质量保障 QA 黑科技

    WeTest 导读 TesterHome 联合腾讯 WeTest 出品 MTSC2019 重磅游戏测试 Topic ,首次公开揭秘腾讯亿级用户游戏背后的质量保障 QA 黑科技. 2019 年,中国游戏 ...

  9. idea使用过程中的一些常见问题,做个笔记

    :当实现这个接口方法时重载是不允许的. 首先我相信我的代码肯定没问题,因为我实现的接口确实有这个方法.在编程阶段就提示这个错误,于是我有理由相信应该是编译错误!通过google,解决办法so easy ...

  10. ASM磁盘操作笔记

    添加磁盘组 create diskgroup abc normal redundancy failgroup a disk 'ORCL:AAA' name AAA failgroup b disk ' ...