I like types. Like to be able to specify meaning to a string or int etc)
A string or an int can be almost anything,
I enjoy giving a string a meaningful type. I also prefer that when you have a longish function call. That way people who use it wont pass in strings in the wrong order.
I often use strings as parameters and I want "MembersName" as a Type derived from string.
I can easily do something like MembersName.Value where string is a property of another class. I would rather derive my class from String but that is not possible since it is sealed.
I have looked at the System.String source and thought about taking it out use it to make my own String type, but I decided against it.
Then I started creating my own stand in base class that I could derive my other string-like types from StringBase (realy good name).
I am working on implementing IEquatable, ICloneable, IComparable, IComparable, IConvertible, IEquatable, IEnumerable
In the base type to make it appear as much like a string as possible.
I would prefer to be able to Membername == "Phil Collins".
It is also desirable to mimick other features of String.
Is this the right path? and does anyone have a version of it written already?
I figure the need must have come up before from someone else?
I tried hunting Google and GitHub without much luck so far.
Am I going down the right path? Or is what I am trying to do nearly impossible?