Tag: foreach

改变Foreach命令?

无论如何都要通过列表从结尾到开头而不是从开始到结束(最好不重新排序列表)。

如何在Panel中添加换行符或html?

我正在尝试使用以下代码创建菜单。 但我无法弄清楚如何让每个LinkBut​​ton出现在单独的行上。 MenuPanel.Controls.Clear(); foreach (FormList f in forms) { if (f.IsActive == “y”) { FormUserControl fc = (FormUserControl)LoadControl(f.StartControl); LinkButton lb = new LinkButton(); lb.Text = fc.Title; MenuPanel.Controls.Add(lb); // I want some sort of line break here } }

如何在Linq / C#列表中获取当前和当前之后的项目?

我有一个项目列表,如果我选择一个项目,那么我将提供上一个和下一个选项。 我已经添加了一个快速代码示例,但我希望有更好/更快的方法来执行此示例,例如500个项目。 可能有一个linq选项或什么? 我检查了enumarator,但只有一个moveNext en无法设置当前。 快速举例: 项目是一本字典 project是字典中存在的keyvaluepair var match = false; var save = new KeyValuePair(); var before = new KeyValuePair(); var after = new KeyValuePair(); foreach (var p in projects) { before = save; save = p; if (match) { after = p; break; } if (p.Key.Id == project.Key.Id) { match = true; […]

如何限制在foreach循环中迭代的元素数量?

我有以下代码 foreach (var rssItem in rss.Channel.Items) { // … } 但是只想要6件物品而不是所有物品,我怎么能用C#做呢?

每个月的前一天

可能重复: 如何遍历日期范围? 有没有办法在特定月份的每一天制作一个foreach循环? 想着类似的东西 foreach (DateTime date in DateTime.DaysInMonth(2012, 1)) { }

foreach循环中的c#string.replace

不知何故,我似乎无法在C#的foreach循环中获得字符串替换。 我的代码如下: foreach (string s in names) { s.Replace(“pdf”, “txt”); } 对于LINQ来说还是很新的,所以请原谅我,如果这听起来很业余;)

在C#中重新启动foreach循环?

如何在C#中重启foreach循环? 例如: Action a; foreach(Constrain c in Constrains) { if(!c.Allows(a)) { a.Change(); restart; } } 这里restart就像continue或break但它从开始重新启动foreach就像将for循环的计数器再次设置为0一样。 这可能在C#中吗? 编辑:我要感谢Mehrdad Afshari和Mahesh Velaga让我发现我当前实现中的一个错误(index = 0),否则就不会发现它。

为什么在这个例子中LINQ更快

我写了以下内容来测试使用foreach vs LINQ的性能: private class Widget { public string Name { get; set; } } static void Main(string[] args) { List widgets = new List(); int found = 0; for (int i = 0; i a.Name.StartsWith(“4″)).Count(); Console.WriteLine(found + ” – ” + DateTime.Now.Subtract(starttime).Milliseconds + ” ms”); Console.ReadLine(); } 我得到类似以下输出: 31160 – 116ms 31160 – 95毫秒 […]

C#中的并行迭代?

有没有办法在C#中对并行枚举进行foreach样式迭代? 对于可订阅列表,我知道可以使用常规for循环迭代索引范围内的int,但出于多种原因我更喜欢foreach 。 奖励积分如果它在C#2.0中有效

在C#中使用foreach循环时的内存分配

我知道关于foreach循环如何在C#中工作的基础知识( foreach循环如何在C#中工作 ) 我想知道是否使用foreach分配可能导致垃圾收集的内存? (适用于所有内置的系统类型)。 例如,在System.Collections.Generic.List类上使用Reflector,这里是GetEnumerator的实现: public Enumerator GetEnumerator() { return new Enumerator((List) this); } 在每次使用时,这会分配一个新的枚举器(以及更多的垃圾)。 所有类型都这样做吗? 如果是这样,为什么? (不能重用一个枚举器吗?)