使用 CodeDom 生成具有值和名称的枚举
我有一小段代码:
private Dictionary<string, IList<KeyValuePair<int, string>>> EnumsCollection = new Dictionary<string, IList<KeyValuePair<int, string>>>();
// ...... Dictionary is filled, fine
// ... outer loop
foreach (var enumNameAndValue in EnumsCollection[enumName])
{
var codeProperty = new CodeMemberField
{
Name = enumNameAndValue.Value
};
codeClass.Members.Add(codeProperty);
}
// ...
很好,我得到一个枚举: 公共枚举 eShape { 圆形的, 正方形, 但是
除了名称之外还可以设置一个值吗? 如:
public enum eShape
{
Round = 4,
Square = 5,
}
I have this little piece of code :
private Dictionary<string, IList<KeyValuePair<int, string>>> EnumsCollection = new Dictionary<string, IList<KeyValuePair<int, string>>>();
// ...... Dictionary is filled, fine
// ... outer loop
foreach (var enumNameAndValue in EnumsCollection[enumName])
{
var codeProperty = new CodeMemberField
{
Name = enumNameAndValue.Value
};
codeClass.Members.Add(codeProperty);
}
// ...
Good, I get an enum :
public enum eShape
{
Round,
Square,
}
but would it be possible to also set a Value moreover the Name?
As in :
public enum eShape
{
Round = 4,
Square = 5,
}
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
您可以使用 InitExpression:
You'd use InitExpression: