`

LIST集合已修改;可能无法执行枚举操作。

阅读更多
foreach是取只读的,在取的时候数据不 能变(包括修改,删除,添加等),因为在取之前foreach的集合已经定好了,新增、删除、修改只能使用for,不能使用foreach
private BLL.UserInfo usbLL = new BLL.UserInfo();
        protected void Page_Load(object sender, EventArgs e)
        { 
            List<Model.UserInfo> us = new List<Model.UserInfo>();
           
            us=usbLL.getUserInfo("");
            foreach (Model.UserInfo u in us)
            {
                //删除数据
                if (u.UserId == "管理员")
                {
                    us.Remove(u);
                }
            }

            foreach (Model.UserInfo u in us)
            {
                Console.WriteLine(u);
            }
        }
分享到:
评论

相关推荐

    C#在foreach遍历删除集合中元素的三种实现方法

    可能无法执行枚举操作。 方法一:采用for循环,并且从尾到头遍历 如果从头到尾正序遍历删除的话,有些符合删除条件的元素会成为漏网之鱼; 正序删除举例: List&lt;string&gt; tempList = new List() { "a","b","b...

    一篇文章带你轻松了解C# Lock关键字

    相信绝大多数.NET玩家和我一样,常常使用Timer这个对象,而在WPF中使用...例如一个List集合,你在一个线程中对它进行了操作,在同步瞬间的另线程中,如果不对它谨慎处理,就会造成 “集合已修改;可能无法执行枚举操

    ConcurrentList

    这样可以防止“修改集合”错误,但是也意味着列表在枚举过程中可能不是最新的。 由于它会复制整个列表,因此也可能导致过多的内存使用。 谨慎枚举。 在大多数情况下,您可以使用线程安全的ForAsync和ForEachAsync...

    超级有影响力霸气的Java面试题大全文档

     Collection是集合类的上级接口,继承与他的接口主要有Set 和List. Collections是针对集合类的一个帮助类,他提供一系列静态方法实现对各种集合的搜索、排序、线程安全化等操作。 13、&和&&的区别。 &是位运算符...

    C#5.0本质论第四版(因文件较大传的是百度网盘地址)

    16.2.5 已排序集合:SortedDictionary和SortedList 453 16.2.6 栈集合:Stack 454 16.2.7 队列集合:Queue 455 16.2.8 链表:LinkedList 456 16.3 提供索引器 456 16.4 返回null或者空集合 ...

    Visual C#2010 从入门到精通(Visual.C#.2010.Step.By.Step).完整去密码锁定版 I部分

    10.2.5 sortedlist集合类 190 10.2.6 使用集合初始化器 191 10.2.7 比较数组和集合 192 10.2.8 使用集合类来玩牌 192 第10章快速参考 195 第11章 理解参数数组 197 11.1 使用数组参数 199 11.1.1 声明params...

    C#入门——面向对象等,代码+注释

    第10天 03_List泛型集合 04_Dictionary 05泛型集合练习 06文件流 FileStream 07StreamReader和StreamWriter 02 file类 01 path类。File.ReadAllBytes 第11天 02 抽象类 Animal Cat Dog Program 02-抽象类 Animal ...

    vc++ 应用源码包_1

    内部包含了atl控件的开发以及如何应用,演示了COM的包容与集合、自动化、事件和连接点、枚举器和集合以及线程管理等等。 ATL实现的CDHtmlDialog模板类v1.03 使用了六个类五个模块类演示了atl的调用方法 ...

    vc++ 应用源码包_2

    内部包含了atl控件的开发以及如何应用,演示了COM的包容与集合、自动化、事件和连接点、枚举器和集合以及线程管理等等。 ATL实现的CDHtmlDialog模板类v1.03 使用了六个类五个模块类演示了atl的调用方法 ...

    vc++ 应用源码包_6

    内部包含了atl控件的开发以及如何应用,演示了COM的包容与集合、自动化、事件和连接点、枚举器和集合以及线程管理等等。 ATL实现的CDHtmlDialog模板类v1.03 使用了六个类五个模块类演示了atl的调用方法 ...

    vc++ 应用源码包_5

    内部包含了atl控件的开发以及如何应用,演示了COM的包容与集合、自动化、事件和连接点、枚举器和集合以及线程管理等等。 ATL实现的CDHtmlDialog模板类v1.03 使用了六个类五个模块类演示了atl的调用方法 ...

    vc++ 应用源码包_3

    内部包含了atl控件的开发以及如何应用,演示了COM的包容与集合、自动化、事件和连接点、枚举器和集合以及线程管理等等。 ATL实现的CDHtmlDialog模板类v1.03 使用了六个类五个模块类演示了atl的调用方法 ...

    Hibernate实战(第2版 中文高清版)

     6.4.2 最简单的可能关联   6.4.3 使关联双向   6.4.4 级联对象状态   6.5 小结   第7章 高级实体关联映射   7.1 单值的实体关联   7.1.1 共享的主键关联   7.1.2 一对一的外键关联   7.1.3 用联结...

    c#学习笔记.txt

    volatile指示字段可由操作系统、硬件或并发执行的线程等在程序中进行修改。 9,语句 语句是程序指令。除非特别说明,语句都按顺序执行。C# 具有下列类别的语句。 类别C# 关键字 选择语句if, else, switch, case 迭代...

    java jdk实列宝典 光盘源代码

    批处理,介绍如何一次执行一批sql语句,这些sql语句用插入、更新和删除等相关操作; 提交和回滚transaction.java; 使用PreparedStatement,动态执行sql语句,UsingPreparedStatement.java; 读写二进制数据,Binary...

    vc++ 开发实例源码包

    内部包含了atl控件的开发以及如何应用,演示了COM的包容与集合、自动化、事件和连接点、枚举器和集合以及线程管理等等。 ATL实现的CDHtmlDialog模板类v1.03 使用了六个类五个模块类演示了atl的调用方法 class ...

Global site tag (gtag.js) - Google Analytics