- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
为了能够按值对字典进行排序,我使用了以下代码:
Dim idCurrentJobs As IDictionary(Of String, Int32) = New Dictionary(Of String, Int32)
'The string in the dictionary represents a jobname and the integer is a counter for how many jobs im currently are running in the application'
idCurrentJobs.Add("JobName1", 2)
idCurrentJobs.Add("JobName2", 1)
idCurrentJobs.Add("JobName3", 2)
idCurrentJobs.Add("JobName4", 5)
idCurrentJobs.Add("JobName5", 3)
idCurrentJobs.Add("JobName6", 4)
Dim jobsSortedByCount As List(Of KeyValuePair(Of String, Int32)) = New List(Of KeyValuePair(Of String, Int32))(idCurrentJobs)
jobsSortedByCount.Sort(Function(firstPair As KeyValuePair(Of String, Int32), nextPair As KeyValuePair(Of String, Int32)) firstPair.Value.CompareTo(nextPair.Value))
idCurrentJobs = jobsSortedByCount.ToDictionary(Of List(Of KeyValuePair(Of String, Int32)))(Function(pair As KeyValuePair(Of String, Int32)) pair.Key)
当我使用 .ToDictionary 方法将 List 对象转换回 Directory 对象时,我在“pair.Key”上收到错误消息:
Value of type 'String' cannot be converted to 'System.Collections.Generic.List(Of System.Collections.Generic.KeyValuePair(Of String, Integer))
我应该如何使用 .ToDictionary 从我的对象列表中获取字典对象?
如果我使用 .ToDictionary 方法将行更改为:
idCurrentJobs = jobsSortedByCount.ToDictionary(Of KeyValuePair(Of String, Int32))(Function(pair As KeyValuePair(Of String, Int32)) pair)
我收到这个错误是因为“Strict On”:
Option Strict On disallows implicit conversions from 'System.Collections.Generic.Dictionary(Of System.Collections.Generic.KeyValuePair(Of String, Integer), System.Collections.Generic.KeyValuePair(Of String, Integer))' to 'System.Collections.Generic.IDictionary(Of String, Integer)'
我该如何解决这个问题?
最佳答案
即使在 Option Strict On
的情况下,这也会起作用。
Dim list As List(Of KeyValuePair(Of String, Int32))
Dim dict As IDictionary(Of String, Int32) =
list.ToDictionary(Function(p) p.Key, Function(p) p.Value)
问题就出在你的代码上:
ToDictionary(Of List(Of KeyValuePair(Of String, Int32)))
关于.net - 使用 .ToDictionary 将 List(Of KeyValuePair(Of String,Int32)) 转换为 Dictionary(Of String, Int32),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4078513/
我想调用一个返回匿名类型的方法。我需要知道这个匿名类型的类型是什么,因为我在一个方法中返回它。这叫“动态”吗?当我调试时,监 window 口显示类型是 <>f__AnonymousType0。 这是
关于 ToDictionary() 的 MSDN 文档并没有多说它实际上是如何工作的。我想知道它是创建字典及其元素的副本,还是只是重复使用相同的引用和枚举器。 例如,如果我有一个 Concurrent
给定以下代码,我无法返回字典。 [JsonProperty] public virtual IDictionary JsonProducts { get { retur
我有一个返回列表的方法,我们称它为GetSomeStrings() . 我在字符串类上有一个扩展方法,返回字符串中的字符数,例如。 myString.Number('A') . 我想在一行中获取字典。
我有一个简单的 LINQ 语句,它拆分一个字符串,然后将值扔到字典中。问题是字典很少已经具有相同值的现有键,因此抛出异常并且“dict”的值保持为空。 dict = lines.Select(l =>
我正在使用 Enumerable.ToDictionary 从 linq 调用中创建一个字典: return (from term in dataContext.Terms where
这个问题在这里已经有了答案: How do you get the duplicate key that ToDictionary() has failed on? (4 个答案) 关闭 7 年前。
我有如下两个模型: public class Complaint { [Key] public int COMP_ID { get; set; } public Nullabl
我不是 C# 和 LINQ 方面的专家。 我有一个Dictionary,我理解是一个哈希表,也就是key没有排序。 dataBase = new Dictionary() Record 是一个用户定义
我有一个像 string strn = "abcdefghjiklmnopqrstuvwxyz" 这样的字符串,并且想要一个像这样的字典: Dictionary(){ {'a',0},
我有一个简单的 Linq 查询: var dict = (from i in Customers select i).ToDictionary(i => i.Id1, i => i.Id2); 尽管查
我有一个字典,我想使用以下示例隐含的规则将其转换为另一个字典: 输入: Dictionary inputs = new Dictionary(3) { { "A", "First" },
最终编辑:我能够在 ini 文件中找到重复的字段。感谢大家的帮助! 我正在使用正则表达式解析 ini 文件,并使用 LINQ 将其存储在字典中: Sample Data: [WindowSetting
我有两个大小相同的字符串列表。我想创建一个字典,键来自listA,值来自listB。 什么是最快的方法? 我使用了代码: List ListA; List ListB;
我有一个要放入字典中的列表,为简单起见,插入的值将全部相同。 我可以使用 foreach 循环。 List list = new List(); list.Add("Earth");
我正在使用 IEnumerable 的 ToDictionary() 扩展方法创建一个 Dictionary 对象: var dictionary = new Dictionary (myCo
如何使用 Linq 将 SQL (2008) 中的两列正确转换为 Dictionary(用于缓存)? 我目前循环遍历 IQueryable b/c 我无法使 ToDictionary 方法工作。有任何
我正在寻找一种获取以下列表的方法: directory = [ { name: "Albert", age: 40, gender: "M"
ExSwift 有一个数组扩展: /** Converts the array to a dictionary with keys and values supplied via th
我有以下代码 public class TestAdaptor { private interface ITargetClass { Guid Id { get; }
我是一名优秀的程序员,十分优秀!