cdm*_*kay 15 c# vb.net clr enums
有没有办法在C#枚举常量中放置空格?我已经读过你可以通过这样做在VB中做到这一点:
Public Enum EnumWithSpaces
ConstantWithoutSpaces
[Constant With Spaces]
End Enum
Run Code Online (Sandbox Code Playgroud)
...然后像这样访问它:
Public Sub UsingEnumWithSpaces()
Dim foo As EnumWithSpaces = EnumWithSpaces.[Constant With Spaces]
End Sub
Run Code Online (Sandbox Code Playgroud)
这意味着CLR可以处理带空格的枚举.
有没有办法在C#中做到这一点?
小智 37
这篇博文可能对您有所帮助:
http://blog.spontaneouspublicity.com/2008/01/17/associating-strings-with-enums-in-c/
来自文章:
但是枚举在C#中不能有空格!"你说.好吧,我喜欢使用System.ComponentModel.DescriptionAttribute为枚举值添加更友好的描述.示例枚举可以像这样重写:
public enum States
{
California,
[Description("New Mexico")]
NewMexico,
[Description("New York")]
NewYork,
[Description("South Carolina")]
SouthCarolina,
Tennessee,
Washington
}
Run Code Online (Sandbox Code Playgroud)
请注意,我没有对该项目的ToString()版本显示正常的项目进行描述.
CLR可以处理标识符中的任何字符.但是,C#将标识符字符限制为CLS下的合法字符,而空间不是.顺便说一下,VB.NET也是如此 - 方括号中的空格曾经用于VB6,但它们不适用于VB.NET.
| 归档时间: |
|
| 查看次数: |
18003 次 |
| 最近记录: |