【问题标题】:Code snippets generating a lookup from enum to object生成从枚举到对象的查找的代码片段
【发布时间】:2014-08-08 01:29:09
【问题描述】:

我想生成字典查找代码 sn-p 迭代现有枚举并执行 foreach 枚举 print "{ enum.A, "A"},"

就像代码 sn-p 是如何“切换”的,但是我自己的版本。

为了方便,我目前正在使用“代码段设计器”。

我目前有以下

IDictionary<$key$, $value$> _lookup = new Dictionary<$key$, $value$>() 
{
    { $key$, $value$ },
};

$end$

编辑: 预期结果(在I​​DE中填写sn-p代码后)

enum FakeEnum
    {
        Foo, Blah, Bar
    }

    IDictionary<FakeEnum, string> _lookup = new Dictionary<FakeEnum, string>() 
    { 
        {FakeEnum.Foo, string}, 
        {FakeEnum.Blah, string}, 
        {FakeEnum.Bar, string} 
    } ;

【问题讨论】:

  • 您能否发布您认为的 final 代码应该是什么样的?我不确定您要做什么,所以我无法查看 sn-p。
  • 我很困惑 - 你有枚举字典吗?您能否在示例代码中添加一个枚举,以显示您在哪里看到使用的枚举?
  • @PanMan 更新了我的答案以反映您编辑的问题。

标签: c# visual-studio-2010 code-snippets


【解决方案1】:
IDictionary<$enum$, string> _lookup = new Dictionary<$enum$, string>();

foreach( $enum$ value in Enum.GetValues(typeof($enum$)) )
{
    _lookup .Add(value, value.ToString());
}
$end$

(基于Can you loop through all enum values?


或者试试这个:

var _lookup = Enum.GetValues(typeof($enum$))
               .Cast<$enum$>()
               .ToDictionary(t => t, t => t.ToString() );
$end$

基于Enum to Dictionary c#

【讨论】:

  • 我不确定您是否将此与实际代码混淆了。此代码是为代码 sn-p 生成而构建的。例如。在 IDE 中输入 prop,会弹出一个 sn-p 供您将自己的值模板化到
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-08-19
  • 2016-07-03
  • 2012-06-25
  • 1970-01-01
  • 2020-01-07
  • 2021-01-04
相关资源
最近更新 更多