I prefer the design version, but including both is easy, as the designer can just call Parse . This is a template followed by a Guid structure (and probably others).
I should add that if you are not dealing with a struct , then the static method should probably refer to the constructor (or even to a separate method that can invoke the call), since you cannot assign this to the constructor of the class .
EDIT . As TrueWill points out, if you enabled Parse , you should enable TryParse . By the way, Guid is instructive again: the Parse method actually uses TryParse and just throws an exception if TryParse returns false .
source share