首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何将IDictionary<string、object>转换为IDictionary<string、MyType>

如何将IDictionary<string、object>转换为IDictionary<string、MyType>
EN

Stack Overflow用户
提问于 2012-10-16 16:50:31
回答 3查看 597关注 0票数 0

我使用的是默认的MemoryCache,它可以很好地满足我的需求。但是,GetValues()方法返回IDictionary<string, object>

有没有一种快速的方法可以将其转换为IDictionary<string, MyType>

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2012-10-16 16:53:42

使用ToDictionary

代码语言:javascript
运行
复制
ToDictionary(k => k.Key, k => (MyType)k.Value)
票数 4
EN

Stack Overflow用户

发布于 2012-10-16 16:53:56

执行您自己的GetValues方法来调用原始方法。对于每个结果,对第二个返回值(对象值)进行强制转换,并生成自己的强制转换IDictionary

票数 0
EN

Stack Overflow用户

发布于 2012-10-16 16:54:32

这意味着您只能在此缓存中存储MyType类型的对象。但如果是这样的话,你可以有一个包装器方法:

代码语言:javascript
运行
复制
public static IDictionary<string, MyType> GetValues(IEnumerable<string> keys)
{
    return MemoryCache.Default.GetValues(keys).ToDictionary(x => x.Key, x => x.Value as MyType);
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12910857

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档