Spaces in C# Enums
c#, clr, enums, vb.net
Solution
This blog post might help you:
http://blog.spontaneouspublicity.com/2008/01/17/associating-strings-with-enums-in-c/
From the article:
But enums can't have spaces in C#!" you say. Well, I like to use the System.ComponentModel.DescriptionAttribute to add a more friendly description to the enum values. The example enum can be rewritten like this:
public enum States
{
California,
[Description("New Mexico")]
NewMexico,
[Description("New York")]
NewYork,
[Description("South Carolina")]
SouthCarolina,
Tennessee,
Washington
}
Notice that I do not put descriptions on items where the `ToString()` version of that item displays just fine.
Problem
Is there any way to put spaces in a C# enum constant? I've read that you can do it in VB by doing this: ``` Public Enum EnumWithSpaces ConstantWithoutSpaces [Constant With Spaces] End Enum ``` ...and then access it like this: ``` Public Sub UsingEnumWithSpaces() Dim foo As EnumWithSpaces = EnumWithSpaces.[Constant With Spaces] End Sub ``` That implies to me that the CLR can handle an enum with spaces. Is there any way to do this in C#?