草庐IT

last_list

全部标签

c# - 为什么 async/await 允许从 List 到 IEnumerable 的隐式转换?

我刚刚研究了async/await并发现了一些有趣的东西。看看下面的例子://1)ok-obviouspublicTask>GetAll(){IEnumerabledoctors=newList{newDoctorDto()};returnTask.FromResult(doctors);}//2)ok-obviouspublicasyncTask>GetAll(){IEnumerabledoctors=newList{newDoctorDto()};returnawaitTask.FromResult(doctors);}//3)ok-notsoobviouspublicasyncT

c# - 为什么 IEnumerable 慢而 List 快?

遇到了这段代码。vardic=newDictionary();for(inti=0;if.Value.StartsWith("1")).Select(f=>f.Key);//.ToList();//uncommentforfastresultsConsole.WriteLine(list.GetType());varlist2=dic.Where(f=>list.Contains(f.Key)).ToList();Console.WriteLine(list2.Count());所以当.ToList()被评论时它很慢,当没有评论时-它很快。可复制here这怎么解释呢?我是否应该始终制作

c# - 如何在 C# 中将 IEnumerable<T> 转换为 List<T>?

我正在使用LINQ查询通用字典,然后将结果用作我的ListView(WebForms)的数据源。简化代码:Dictionarydict=GetAllRecords();myListView.DataSource=dict.Values.Where(rec=>rec.Name=="foo");myListView.DataBind();我认为这行得通,但实际上它抛出了一个System.InvalidOperationException:ListViewwithid'myListView'musthaveadatasourcethateitherimplementsICollectiono

c# - 如何在使用 get 属性公开 List 的同时保护 List 的 Add 方法?

我有一个名为WhatClass的类,其中包含List字段。我需要能够只读这个字段,所以我使用get属性将它暴露给其他对象。publicclassWhatClass{List_SomeOtherClassItems;publicListSomeOtherClassItems{get{return_SomeOtherClassItems;}}}然而事实证明,任何对象都可以调用WhatClass.SomeOtherClassItems.Add(item);我怎样才能避免这种情况? 最佳答案 正如其他人所说,您正在寻找.AsReadOnly

c# - 从一个 List<T> 中删除在另一个 List<T> 中找到的元素

我有两个列表Listlist1=newList();Listlist2=newList();我想从list1中删除所有元素,这些元素也存在于list2中。当然,我可以遍历第一个循环来查找list2中的每个元素,但我正在寻找优雅的解决方案。谢谢! 最佳答案 要更改实际的list1,您可以使用list1.RemoveAll(item=>list2.Contains(item));您可能更喜欢简单地查询列表而不修改任何一个varresult=list1.Except(list2);LukeH在评论中提出了很好的建议。在第一个版本中,如果l

c# - 如何使用linq查询LIST

假设如果我将person类实例添加到列表中,然后我需要使用linq查询列表。Listlst=newList();lst.add(newperson{ID=1,Name="jhon",salary=2500});lst.add(newperson{ID=2,Name="Sena",salary=1500});lst.add(newperson{ID=3,Name="Max",salary=5500});lst.add(newperson{ID=4,Name="Gen",salary=3500});现在我想用linq查询上面的列表。请指导我使用示例代码。 最佳答

c# - 如何将 List<int> 转换为 string[]?

我需要一种简单的方法来转换List到string数组。我有:varthe_list=newList();the_list.Add(1);the_list.Add(2);the_list.Add(3);string[]the_array=newstring[the_list.Count];for(vari=0;i...这对我来说看起来很丑。有没有更简单的方法?注意:我正在寻找一种更简单的方法-不一定是更快的方法。 最佳答案 使用LINQ:string[]the_array=the_list.Select(i=>i.ToString()

c# - JSON.net - 字段是字符串或 List<string>

我遇到这样一种情况,从REST服务返回的JSON返回电影对象列表,所有对象都包含大量信息。该REST服务结果中的几个字段会根据可用信息发生变化。一个例子:电影总是有一些屏幕截图(图像)、Actor和导演。根据所讨论的电影,可能有一张或多张图片、一位或多位Actor以及一位或多位导演。几个案例的示例JSON:{"title":"Movietitle","images":["http://www.url.com/img_0.jpg","http://www.url.com/img_1.jpg","http://www.url.com/img_2.jpg","http://www.url.c

c# - XmlSerializer.Deserialize 在 List<> 项上

我已经尝试了所有可以在SO和其他地方找到的解决方案,但似乎无法弄清楚为什么这不起作用。将XML字符串直接反序列化为一个对象,该对象具有一个属性-一个列表:[XmlTypeAttribute(AnonymousType=true)]publicclassUpdateData{[XmlArrayItem(ElementName="Updates")]publicListUpdates{get;set;}publicUpdateData(){Updates=newList();}}publicclassUpdate{[XmlElement(ElementName="MemberID")]pu

c# - 如何将 List<string> 转换为 Sql In 语句的 SqlParameter?

这个问题在这里已经有了答案:PassArrayParameterinSqlCommand(11个答案)关闭6年前。我似乎对如何执行In感到困惑带有SqlParameter的语句.到目前为止,我有以下代码:cmd.CommandText="Selectdscrfromsystem_settingswheresettingin@settings";cmd.Connection=conn;cmd.Parameters.Add(newSqlParameter("@settings",settingList));reader=cmd.ExecuteReader();settingsList是Li