问题
Is it possible to declare a constant Guid in C#?
I understand that I can declare a static readonly Guid
, but is there a syntax that allows me to write const Guid
?
回答1:
No. The const
modifier only applies to "primitive" types (bool, int, float, double, long, decimal, short, byte) and strings. Basically anything you can declare as a literal.
回答2:
Declare it as static readonly Guid
rather than const Guid
回答3:
public static readonly Guid Users = new Guid("5C60F693-BEF5-E011-A485-80EE7300C695");
and that's that.
回答4:
While you can't seem to do that you can do that to be parsed whenever you need it:
const string _myGuidStr = "e6b86ea3-6479-48a2-b8d4-54bd6cbbdbc5";
But don't use the above guid as it belongs to me solely, I first generated it so I claim ownership on this particular guid above! But I'm generious - use this one instead (I don't like how it talks back to me but it's a nice guid overall when it keeps its mouth shut): 284c694d-d9cc-446b-9701-b391876c8394
回答5:
I am doing it like this:
public static class RecordTypeIds
{
public const string USERS_TYPEID = "5C60F693-BEF5-E011-A485-80EE7300C695";
public static Guid Users { get { return new Guid(EntityTypeIds.USERS_TYPEID); } }
}
来源:https://stackoverflow.com/questions/4926573/how-to-declare-a-constant-guid-in-c