问题标签 [idictionary]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
7 回答
14496 浏览

c# - 转换字典小写键 (C#)

我有一个获取 IDictionary 作为参数的方法。现在我想提供一个从这个字典中检索值的方法,但它应该是大小写不变的。

所以我现在对此的解决方案是有一个静态函数,它遍历键并将它们转换为如下所示:

现在,这没关系,但它仍然是一个相当大的代码块,与我的“干净和高效”的想法相矛盾。您是否知道任何替代方法,以便字典的 .ContainsKey() 方法不区分大小写?

0 投票
10 回答
2132 浏览

c# - 使用递归从 IDictionary 中删除项目

有人有更巧妙的方法来做到这一点吗?似乎它应该比这更容易,但我有一个心理障碍。基本上我需要从字典中删除项目并递归到也是字典的项目的值。

动作字典是这样的:

0 投票
3 回答
844 浏览

c# - COM Interop IDictionary - 如何在 C# 中检索值?

使用:VS2008,C#

我有一个需要在 .NET 项目中使用的 COM dll。在那里,我有一个带有返回 IDictionary 对象的方法的类。IDictionary 是在 COM dll 中定义的,所以我不确定它是否与 .NET 中的 IDictionary 相同。

我的问题:我知道字典键,我想检索值。此 COM dll 的文档提供了经典 ASP 中的代码,例如

我的问题:如何检索 C# 中特定键的值?

当我像这样在 C# 中创建 IDictionary 对象时:

VS2008 认为这个字典对象(接口)有以下方法和属性:

抱歉,如果这是一个愚蠢的问题,但我看不到如何通过键检索值。

0 投票
1 回答
226 浏览

wcf - 在异步模式下调用服务时出错

Stackoverflow 绝对是最快的论坛,所以在 WCF 论坛上发布这个问题后,我决定来这里。

我有一个 wcf 服务,它返回一个字典(IDictionary)并且工作得很好。现在我想添加在异步模式下调用该服务的功能,但是当 BeginMethod 被执行时,我得到以下异常:

类型 System.Collections.Generic.Dictionary`2[[System.String, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089],[TransferProp, Contracts, Version=10.1.0.0, Culture=neutral, PublicKeyToken =6f5bf81c27b6b8aa]] 不受支持,因为它实现了 IDictionary。

那是怎么回事?

0 投票
1 回答
1251 浏览

c# - NHibernate 2.0:IDictionary 的 Cfg.Configuration.SetProperties 问题

我有一个问题:

不接受 IDictionary:NHibernateConfigHandler

我收到以下消息:

错误 30 'NHibernate.Cfg.Configuration.SetProperties(System.Collections.Generic.IDictionary)' 的最佳重载方法匹配有一些无效参数

错误 31 参数“1”:无法从“System.Collections.IDictionary”转换为“System.Collections.Generic.IDictionary”

请指教?


整个方法:

}

0 投票
2 回答
9327 浏览

c# - 使用反射获取通用 IDictionary 的值

我有一个实现的实例IDictionary<T, K>,我在编译时不知道 T 和 K,并且想从中获取所有元素。由于某种原因,我不想使用IEnumerable它,这将是由IDictionary.

我到目前为止的代码:

我也可以调用 TryGetValue,但我认为应该可以调用 [] 运算符。有谁能够帮我?

0 投票
5 回答
2891 浏览

c# - IDictionary 接口的用途

IDictionary 接口需要什么。如何初始化 IDictionary 接口。毕竟它只是一个界面。以下代码片段来自 msdn。我无法理解。

0 投票
3 回答
1433 浏览

c# - 如何使用 LINQ (C# 3.0) 更改 IDictionary 的内容

如何使用 C# 3.0 (Linq, Linq extensions) 更改 IDictionary 的内容?

0 投票
2 回答
3099 浏览

c# - 字典,字典

我有:

(仅出于说明目的,它被实例化并具有值 - 在其他地方)

为什么我可以这样做:?

执行此行后基本上 dic1 具有 OldDic1 的所有值;作品。

但是,当我这样做时:

我得到 null,它与强制转换相同,只是它不会崩溃,而是返回 null。所以问题是为什么我不能将它从接口转换为类型?有没有解决方案,除了首先改变它的存储方式吗?

0 投票
2 回答
299 浏览

nhibernate - = IDictionary

我有 3 个实体: class User {id,name...} class UserUrl {id,user_id,url,url_type_id} class UrlType {id,name} 我的映射:
<class name="User" table="Users" lazy="false">
  <id name="id" type="Int32" column="id">
    <generator class="identity" />
  </id>
  <property name="name" column="name" type="String"/>
  <map name="Urls" table="UserUrl">
     <key column="user_id"></key>
     <index-many-to-many class="UrlType" column="url_type_id"/>
     <one-to-many class="UserUrl"/>
   </map>
</class>
<class name="UserUrl" table="UserUrl">
   <id name="id" type="Int32" column="id">
    <generator class="identity"/>
   </id>
   <property name="user_id" column="user_id" type="Int32"/>
   <many-to-one name="UrlType" column="url_type_id" class="UrlType"/>
   <property name="Url" column="url" type="String" not-null="true"/>
</class> >
所以 User.Urls 是 IDictionary <UrlType,UserUrl>。但我想得到 Dictionary <string,UserUrl>,其中字符串键是 UrlType.name。有人知道怎么做这个吗?