取枚举值的问题,在线等

zthsn 2011-09-26 01:12:34
/// <summary>
/// 语言枚举
/// </summary>
public enum LanguageEnum
{
[EnumDescription("en-US)")]
English,
[EnumDescription("zh-CN)")]
Chinese
}

我想取这个枚举EnumDescription里面的值 怎么取啊???
在线等高手解答!
...全文
140 15 打赏 收藏 转发到动态 举报
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
g4_magicvr 2011-09-26
  • 打赏
  • 举报
回复
[Quote=引用 14 楼 zthsn 的回复:]

引用 13 楼 g4_magicvr 的回复:
很简单啊 你得到EnumDescription("en-US“)的值之后 直接用强类型转换 转成string字符串
然后用字符串的match()方法 利用正则表达式查找并返回这个字符串
然后你就得到一个string类型的 en-US 这样的值

然后……看你想干啥了。如果只是要写出来。得到string类型已经完成任务了

....我问……
[/Quote]

我已经说完了啊,你意思是要执行代码?
zthsn 2011-09-26
  • 打赏
  • 举报
回复
[Quote=引用 13 楼 g4_magicvr 的回复:]
很简单啊 你得到EnumDescription("en-US“)的值之后 直接用强类型转换 转成string字符串
然后用字符串的match()方法 利用正则表达式查找并返回这个字符串
然后你就得到一个string类型的 en-US 这样的值

然后……看你想干啥了。如果只是要写出来。得到string类型已经完成任务了
[/Quote]
....我问的就是怎么取出en-US zh-CN
g4_magicvr 2011-09-26
  • 打赏
  • 举报
回复
很简单啊 你得到EnumDescription("en-US“)的值之后 直接用强类型转换 转成string字符串
然后用字符串的match()方法 利用正则表达式查找并返回这个字符串
然后你就得到一个string类型的 en-US 这样的值

然后……看你想干啥了。如果只是要写出来。得到string类型已经完成任务了
zthsn 2011-09-26
  • 打赏
  • 举报
回复
[Quote=引用 11 楼 g4_magicvr 的回复:]
其实我没看懂你的问题。你是要en_US那部分么
直接获取对应的值 转化为string 然后操作string对象的方法读取字符串咯
[/Quote]
我要的是EnumDescription("en-US“)里面的en-US跟EnumDescription("zh-CN”)里面的zh-cn
g4_magicvr 2011-09-26
  • 打赏
  • 举报
回复
其实我没看懂你的问题。你是要en_US那部分么
直接获取对应的值 转化为string 然后操作string对象的方法读取字符串咯
zthsn 2011-09-26
  • 打赏
  • 举报
回复
[Quote=引用 9 楼 vrhero 的回复:]
反射咯,GetCustomAttributes方法...特性值在运行时只能用反射获取,去看MSDN...

使用反射访问特性(C# 和 Visual Basic)
[/Quote]
你的签名不错
vrhero 2011-09-26
  • 打赏
  • 举报
回复
反射咯,GetCustomAttributes方法...特性值在运行时只能用反射获取,去看MSDN...

使用反射访问特性(C# 和 Visual Basic)
zthsn 2011-09-26
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 liuchaolin 的回复:]
switch(LanguageEnum)
{
case LanguageEnum.English:
return EnumDescription("en-US)")
default :
return EnumDescription("zh-CN)")
}
[/Quote]
这样的话就写死了,如果我以后再加一种语言的话还要改源码的啊
md5e 2011-09-26
  • 打赏
  • 举报
回复
switch(LanguageEnum)
{
case LanguageEnum.English:
return EnumDescription("en-US)")
default :
return EnumDescription("zh-CN)")
}
快乐的毛毛虫 2011-09-26
  • 打赏
  • 举报
回复
3楼的可行,简单的办法,洒家确实不晓得,替你顶贴
zthsn 2011-09-26
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 bdmh 的回复:]
http://hi.baidu.com/hubblebubblepig/blog/item/2dffca39ab8934f43a87ced8.html
[/Quote]
有没有简单一点的方法啊兄弟
zthsn 2011-09-26
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 liuchaolin 的回复:]
switch(LanguageEnum)
{
case "English"
return EnumDescription("en-US)")
default :
return EnumDescription("zh-CN)")
}
[/Quote]
不对 取不到这样
zthsn 2011-09-26
  • 打赏
  • 举报
回复
/// <summary>
/// 语言枚举
/// </summary>
public enum LanguageEnum
{
[Description("en-US)")]
English,
[Description("zh-CN)")]
Chinese
}
或者取Description里面的值也行,我就想取到它的语言编码
md5e 2011-09-26
  • 打赏
  • 举报
回复
switch(LanguageEnum)
{
case "English"
return EnumDescription("en-US)")
default :
return EnumDescription("zh-CN)")
}

62,025

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧