草庐IT

ienumerable

全部标签

c# - 从 IEnumerable<T> 中删除项目

我有2个IEnumerable集合。IEnumerableobjectsToExcept和IEnumerableallObjects.objectsToExcept可能包含来自allObjects的对象。我需要从objectsToExcept中的allObjects对象中移除。例如:foreach(varmyClassinobjectsToExcept){allObjects.Remove(myClass);}或者allObject.Except(objectsToExcept)但它不起作用。方法执行后的计数表明没有项目被删除。 最佳答案

c# - 如何将 IEnumerable<string> 转换为一个逗号分隔的字符串?

假设出于调试目的,我想快速将IEnumerable的内容放入单行字符串中,每个字符串项以逗号分隔。我可以在带有foreach循环的辅助方法中完成它,但这既不有趣也不简短。可以使用Linq吗?其他一些简短的方法? 最佳答案 usingSystem;usingSystem.Collections.Generic;usingSystem.Linq;classC{publicstaticvoidMain(){vara=new[]{"First","Second","Third"};System.Console.Write(string.Jo

c# - 通用 NOT 约束 where T : ! IEnumerable

根据标题,是否可以在C#4中声明类型否定约束? 最佳答案 不-在C#或CLR中都没有这样的概念。 关于c#-通用NOT约束whereT:!IEnumerable,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/8727523/

c# - IEnumerable 和 IEnumerable<T> 之间的区别?

IEnumerable之间有什么区别?和IEnumerable?我已经看到许多框架类都实现了这两个接口(interface),因此我想知道实现这两个接口(interface)有什么好处?请看一下它们是如何定义的:publicinterfaceIEnumerable{[DispId(-4)]IEnumeratorGetEnumerator();}publicinterfaceIEnumerable:IEnumerable{IEnumeratorGetEnumerator();}如我们所见,IEnumerable源自IEnumerable,这意味着什么IEnumerable有,IEnume

c# - 如何将 IEnumerable 列表传递给 MVC 中的 Controller ,包括复选框状态?

我有一个mvc应用程序,我在其中使用这样的模型:publicclassBlockedIPViewModel{publicstringIP{get;set;}publicintID{get;set;}publicboolChecked{get;set;}}现在我有一个View来绑定(bind)这样的列表:@modelIEnumerable@using(Html.BeginForm()){@Html.AntiForgeryToken()}@foreach(variteminModel){@Html.HiddenFor(x=>item.IP)@Html.CheckBoxFor(x=>item

c# - Automapper 无法映射到 IEnumerable

我有两个这样的类:publicclassSentEmailAttachment:ISentEmailAttachment{publicSentEmailAttachment();publicstringFileName{get;set;}publicstringID{get;set;}publicstringSentEmailID{get;set;}publicstringStorageService{get;set;}publicstringStorageServiceFileID{get;set;}}和publicclassSentEmailAttachmentItem:ISent

c# - 确定集合是否属于 IEnumerable<T> 类型

如何判断对象是否为IEnumerable类型?代码:namespaceNS{classProgram{staticIEnumerableGetInts(){yieldreturn1;}staticvoidMain(){vari=GetInts();vartype=i.GetType();Console.WriteLine(type.ToString());}}}输出:NS.1.Program+d__0如果我将GetInts更改为返回IList,则一切正常输出是:System.Collections.Generic.List`1[System.Int32]这会返回false:namesp

c# - 如何同时遍历两个 IEnumerables?

我有两个枚举:IEnumerablelist1和IEnumerablelist2.我想同时遍历它们:foreach((a,b)in(list1,list2)){//useaandb}如果它们不包含相同数量的元素,则应抛出异常。执行此操作的最佳方法是什么? 最佳答案 你想要像Zip这样的东西LINQ运算符-但.NET4中的版本总是在任一序列完成时截断。MoreLINQimplementation有一个EquiZip方法,它会抛出一个InvalidOperationException。varzipped=list1.EquiZip(li

c# - 参数 IEnumerable<T> c#

为什么我不能使用带参数的IEnumerable?这会被修复吗?我真的希望他们重写旧库以使用泛型... 最佳答案 WhycantIuseanIEnumerablewithparams?问题的前提是设计团队必须提供不向语言添加功能的理由。这个假设是错误的。相反,为了让您使用某个功能,需要对其进行思考、设计、指定、实现、测试、记录和发布。所有这些都有很大的成本。已经想到并设计了“paramsenumerable”特性。它从未被指定、实现、测试、记录或运送。因此,您不能使用该功能。更新:截至撰写本文时-2015年初-现已指定,但在2014年

c# - List 和 IEnumerable 之间的实际区别

这个问题在这里已经有了答案:IEnumerablevsList-WhattoUse?Howdotheywork?(11个答案)关闭9年前。通过阅读类似的帖子,我了解到List是一种IEnumerable。但我真的很想知道这两者之间的实际区别是什么。对于一直使用List而从未使用过IEnumerable的人:两者之间的实际区别是什么?在什么情况下,其中一个比另一个更好?这是一个实际例子:我们要存储四个字符串,按字母顺序排列它们,将它们传递给另一个函数,然后向用户显示结果。我们会使用什么?为什么?希望有人能帮我解决这个问题或为我指明正确的方向。提前致谢!