1

使用:VS2008,C#

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

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

someValue = oMyDictionary.someDictionaryKey

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

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

IDictionary oDictConfig = oAppConfig.GetOptionsDictionary("");

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

Cast<>
Count
Equals
GetEnumerator
GetHashCode
GetMultiple
GetType
let_Value
OfType<>
Prefix
PutMultiple
ToString

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

4

3 回答 3

0

IDictionary在其成员中有一个 Item 属性,您可以通过 [ ] 访问该属性。

var obj = oDictConfig[key];
于 2009-03-28T13:30:54.940 回答
0

试试这个:

dicObject["myKey"]
于 2009-03-28T13:31:27.060 回答
0

看起来您正在使用 BizTalk Server 2000 中的 IDictionary COM 接口:

http://msdn.microsoft.com/en-us/library/ms936717.aspx

这个接口还应该有一个 NewEnum 属性(检查 Reflector 中的互操作程序集),它应该返回一个 IEnumerable 给你。此 IEnumerable 将是键的枚举,然后您可以使用它来调用 Value 属性(当然使用适当的键)来获取值。

于 2009-03-28T15:06:43.930 回答