草庐IT

字典顺序

全部标签

c# - 如何将字典转换为查找?

这个问题在这里已经有了答案:LINQConvertDictionarytoLookup(5个答案)关闭8年前。我有一个带有签名的词典:Dictionary>.我想将其转换为带有签名的查找:Lookup.我试过:LookuploginGroups=mapADToRole.ToLookup(ad=>ad.Value,ad=>ad.Key);但这并不是很好。

c# - 在 propertygrid 中使用字典

我想使用propertygrid编辑键值(字符串,字符串)项目列表。当我使用Dictionary作为类型,propertygrid将显示一个GUI,但它似乎没有“启用”,即。我无法添加任何项目。是否支持Dictionary对象,或者是否有任何其他对象可以用来解决这个问题? 最佳答案 我已经按照thiscode做了过去:classDictionaryPropertyGridAdapter:ICustomTypeDescriptor{IDictionary_dictionary;publicDictionaryPropertyGridA

c# - 字典的线程安全

如果我有一个DictionarymyDic=newDictionary//Populatedictionary一个线程做myDic[0]=newStreamReader(path);另一个线程做myDic[1]=newStreamReader(otherpath)这个线程安全吗,因为字典中被修改的实际项目与另一个线程上的项目不同,或者我会得到一个InvalidOperationException:Collectionwasmodified 最佳答案 如果您在修改时枚举字典,您只会得到InvalidOperationException

c# - 字典、列表还是数组?

关闭。这个问题需要更多focused.它目前不接受答案。想改进这个问题吗?更新问题,使其只关注一个问题editingthispost.关闭8年前。Improvethisquestion我正在编写一项性能至关重要的服务,但我不确定什么是最快的。我有几个对象(50-200),每个对象都有一个ID(整数,例如84397或23845)。拥有一个字典、一个键值对列表或一个索引设置为ID的列表,其余的具有空值或具有相同想法的数组会更快吗?

c# - 如何在 C# 中对两个字典中的值求和?

我有两个结构相同的字典:Dictionaryfoo=newDictionary(){{"Table",5},{"Chair",3},{"Couch",1}};Dictionarybar=newDictionary(){{"Table",4},{"Chair",7},{"Couch",8}};我想将字典的值加在一起,并返回带有键的第三个字典,以及每个键的总值:Table,9Chair,10Couch,9我当前的解决方案是循环遍历字典并以这种方式将它们拉出,但我知道该解决方案不是最高效或最易读的。但是,我在尝试在LINQ中提出解决方案时碰壁了。 最佳答案

c# - 我可以颠倒多播委托(delegate)事件的顺序吗?

当您在.NET中订阅事件时,订阅会添加到多播委托(delegate)中。当事件被触发时,委托(delegate)将按照它们被订阅的顺序被调用。我想以某种方式覆盖订阅,以便订阅实际上以反向顺序触发。这可以做到吗?如何做到?我想这样的东西可能是我需要的?:publiceventMyReversedEvent{add{/*magic!*/}remove{/*magic!*/}} 最佳答案 你不需要任何魔法;你只需要反转加法即可。编写delegate1+delegate2会返回一个新委托(delegate),其中包含delegate1中的方

c# - 将元组列表转换为字典

如何以最短的方式将元组列表转换为字典(C#)?IList>applyOnTree=getTuples(); 最佳答案 假设long是键,int是值;applyOnTree.ToDictionary(x=>x.Item1,x=>x.Item2);显然,如果是相反的情况,只需将这两者颠倒即可。 关于c#-将元组列表转换为字典,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/131804

c# - 根据 item.key 获取字典项的索引

如何根据元素键找到字典元素的索引?我正在使用以下代码来浏览字典:foreach(varentryinfreq){varword=entry.Key;varwordFreq=entry.Value;inttermIndex=??????;}有人能帮忙吗? 最佳答案 Dictionary中没有索引的概念。您不能依赖Dictionary中项目的任何顺序。OrderedDictionary可能是替代方案。varfreq=newOrderedDictionary();//...foreach(varentryinfreq){varword=e

c# - 字符串函数字典 c#,其中函数具有不同的参数

基本上我试图在C#中创建一个字符串来函数字典,我已经看到它是这样完成的:Dictionary>但是问题是我想放入字典的函数都有不同数量的不同类型的参数。因此,我该如何制作一本能做到这一点的字典?亚当 最佳答案 您可以使用paramsstring[]参数定义自己的委托(delegate),如下所示:delegateTOutParamsFunc(paramsTIn[]args);然后像这样声明你的字典:Dictionary>functions;所以,你可以这样使用它:publicstaticstringConcat(string[]ar

c# - 在 MVC 中按字母顺序排列 SelectList

similarexample问题是我的选择列表可能有数据(加上它的格式类似于[FordIV200xyx]),我想在其中退休(通过仅显示在其第3列中具有true位值的记录,这也是我需要弄清楚该怎么做),最大的问题是,如果用户添加了另一辆福特,它现在会一直显示在下拉列表的底部,它看起来会非常困惑,甚至可能被忽视,所以有什么想法吗?附注将jquery添加到标签中,以防这是一个可能的解决方案,因为我可以在这个项目中使用它。编辑-对于第3列位值过滤器,这里是solution 最佳答案 您可以使用OrderBy扩展方法:x.ModelId,ne