草庐IT

graphql_collections

全部标签

c# - 奇怪的 "Collection was modified after the enumerator was instantiated"异常

也许有人可以为我指出正确的方向,因为我对此一头雾水。我有一个函数可以简单地打印出类的LinkedList:LinkedListcomponents=newLinkedList();...privatevoidPrintComponentList(){Console.WriteLine("---ComponentList:"+components.Count+"entries---");foreach(Componentcincomponents){Console.WriteLine(c);}Console.WriteLine("------");}Component对象实际上有一个自定

c# - 避免 InvalidOperationException : Collection was modified? 的最佳实践

我经常需要这样的东西:foreach(Linelineinlines){if(line.FullfilsCertainConditions()){lines.Remove(line)}}这不起作用,因为我总是得到一个InvalidOperationException,因为Enumerator在循环期间被更改了。所以我将所有此类循环更改为以下内容:Listremove=newList();foreach(Linelineinlines){if(line.FullfilsCertainConditions()){remove.Add(line)}}foreach(Linelineinrem

c# - "Collection was of a fixed size"带有 POCO 的 EF4 异常

我将EF4与WCF和POCO结合使用。我删除了POCO实体中的所有虚拟关键字。我有Employee和Team实体,两者之间的关系是1:N,意味着一名员工只能分配到一个团队。我想在现有团队中添加新员工。以下代码在客户端。privatevoidbtnAdd_Click(objectsender,RoutedEventArgse){TeamteamFromDb=ServiceProxy.GetService.GetTeamById(181);EmployeenewEmp=newEmployee{UserName="username"};newEmp.Team=teamFromDb;Servi

c# - DDD : entity's collection and repositories

假设我有publicclassProduct:Entity{publicIListItems{get;set;}}假设我想找到一个最大的项目...我可以添加方法Product.GetMaxItemSmth()并使用Linq(fromiinItemsselecti.smth).Max())或使用手动循环或其他方式。现在,问题是这会将整个集合加载到内存中。正确的解决方案是进行特定的数据库查询,但域实体无权访问存储库,对吧?所以要么我做productRepository.GetMaxItemSmth(product)(这很丑,不是吗?),或者即使实体可以访问存储库,我也使用来自实体的IPro

c# - System.Collections.Generic.List 中的某项在什么情况下不会被删除成功?

在什么情况下System.Collections.Generic.List中的item不会被成功移除?来自http://msdn.microsoft.com/en-us/library/cd666k3e.aspx:trueifitemissuccessfullyremoved;otherwise,false.ThismethodalsoreturnsfalseifitemwasnotfoundintheList(OfT).他们表达它的方式让我认为对List(OfT)中找到的项目的删除操作实际上可能会失败,因此这个问题。 最佳答案 查

c# - 将 Graphql 转换为 SQL?

我们有现有的SQLServer数据库,我们正在使用C#。假设我们的移动客户端向服务器发送了一个graphql。我如何转换此SQL,以便我的客户获得他期望的数据? 最佳答案 GraphQL和SQL虽然听起来很相似,但解决的问题不同。SQL用于直接查询数据库。GraphQL用于查询任何类型的数据源,例如数据库(通过SQL或客户端库)、API和静态文件。GraphQL可以与REST或临时API端点进行比较。一种解决方案是自己创建GraphQL实现。GraphQL.org有很多关于如何实现和使用GraphQL服务器的重要信息。如果工作量太大

C# 应用程序设置 : Is there a easy way to put a collection into <appSetting>

我试过了和System.Configuration.ConfigurationManager.AppSettings.GetValues("List");但我只得到最后一个成员。我怎样才能轻松解决这个问题? 最佳答案 我处理过类似的问题,我是用这段代码解决的。希望这对您的问题有所帮助。在这种情况下,列表(类似于我的URLSection)将在web.config中有一个完整的配置部分,然后您可以从该部分获取所有值。我为此创建了三个类:ConfigElement、ConfigElementCollection、WebConfigSect

c# - 如何就地对 Collection<T> 进行排序?

我有一个通用集合:publicItems:Collection{protectedoverridevoidInsertItem(intindex,Objectitem){base.InsertItem(index,item);...}protectedoverridevoidRemoveItem(intindex){base.RemoveItem(index);...}protectedoverridevoidSetItem(intindex,Objectitem){base.SetItem(index,item);...}protectedoverridevoidClearItems

c# - 无法将带有 [] 的索引应用于 mvc Controller 中类型为“System.Collections.Generic.ICollection<int>”的表达式

publicActionResultaddstandardpackage1(ICollectionSingleStay,ICollectionDOUBLESTAY,ICollectionTRIBLESTAY,ICollectionFAMILYSTAY,ICollectionEXTRABED){vars=SingleStay;for(inti=0;i在for循环中,我收到类似无法将带[]的索引应用于类型表达式的错误,但我需要在for循环中,在我得到的每个中。因为基于for循环,我会将详细信息与其他集合列表绑定(bind)。请帮助我。我在varcal=Singlestay[i]中遇到错误。

c# - GC.Collect() 阻塞了吗?

我正在对我的代码运行一些基准测试,我想确保在我的一个基准测试期间不会发生垃圾收集,因为它正在清理先前测试的困惑情况。我认为我最好的机会是在开始基准测试之前强制收集。所以我在基准测试开始之前调用GC.Collect()但不确定收集是否继续在单独的线程中运行,等等并立即返回。如果它确实在BG线程上运行,我想知道如何同步调用它或至少等到它完成收集。 最佳答案 如MSDN所述-使用此方法尝试回收所有不可访问的内存。无论如何,如果它确实开始了垃圾收集,您应该在开始基准测试之前等待所有终结器完成。GC.Collect();GC.WaitForP