We have a customer who needs to specify an url containing escaped characters in the querystring: www.example.com/folder/page?uri=/path/%3Fsome=value. When this is stored in an Url-property it is automatically converted to www.example.com/folder/page?uri=/path/?some=value. As it happens, the linked third party website needs the '%3F' in the url and not the replaced '?'.
One might argue that the third party website should handle the '?'. However, the fact remains that you cannot store urls exactly the way you type them in since episerver (or .net?) automatically converts them before storing. Why is this? Has anyone had this problem and solved it?
Do you have to use Url property? It should work fine with string property.
As this is an already live website I don't want to alter the property type. The Url editor interface is also designed for links so I would rather let editors continue to use that.
My solution for now will however be an additional string property that if set will override the Url prop. Less than ideal but, as you point out, it works since it doesn't alter the data.