Barra codificada en URL en URL

Mi mapa es:

routes.MapRoute(
   "Default",                                             // Route name
   "{controller}/{action}/{id}",                          // URL with params
   new { controller = "Home", action = "Index", id = "" } // Param defaults
);

Si uso la URLhttp://localhost:5000/Home/About/100%2f200 no hay una ruta coincidente. Cambio la URL ahttp://localhost:5000/Home/About/100 entonces la ruta vuelve a coincidir.

¿Hay alguna manera fácil de trabajar con parámetros que contengan barras inclinadas? Otros valores escapados (espacio%20) parece funcionar.

EDITAR

Para codificar Base64 funciona para mí. Hace que la URL sea fea, pero eso está bien por ahora.

public class UrlEncoder
{ 
    public string URLDecode(string  decode)
    {
        if (decode == null) return null;
        if (decode.StartsWith("="))
        {
            return FromBase64(decode.TrimStart('='));
        }
        else
        {
            return HttpUtility.UrlDecode( decode) ;
        }
    }

    public string UrlEncode(string encode)
    {
        if (encode == null) return null;
        string encoded = HttpUtility.PathEncode(encode);
        if (encoded.Replace("%20", "") == encode.Replace(" ", ""))
        {
            return encoded;
        }
        else
        {
            return "=" + ToBase64(encode);
        }
    }

    public string ToBase64(string encode)
    {
        Byte[] btByteArray = null;
        UTF8Encoding encoding = new UTF8Encoding();
        btByteArray = encoding.GetBytes(encode);
        string sResult = System.Convert.ToBase64String(btByteArray, 0, btByteArray.Length);
        sResult = sResult.Replace("+", "-").Replace("/", "_");
        return sResult;
    }

    public string FromBase64(string decode)
    {
        decode = decode.Replace("-", "+").Replace("_", "/");
        UTF8Encoding encoding = new UTF8Encoding();
        return encoding.GetString(Convert.FromBase64String(decode));
    }
}

EDIT1:

Al final resultó que la mejor manera era guardar una cadena bien formateada para cada elemento que necesito seleccionar. Eso es mucho mejor porque ahora solo codifico valores y nunca los decodifico. Todos los caracteres especiales se convierten en "-". Muchas de mis tablas db ahora tienen esta columna adicional "URL". Los datos son bastante estables, por eso puedo ir por este camino. Incluso puedo verificar si los datos en "URL" son únicos.

EDIT2:

También ten cuidado con el personaje espacial. Se ve bien en el servidor web integrado VS pero es diferente en iis7 Url codificar correctamente el carácter de espacio

Respuestas a la pregunta(9)

Su respuesta a la pregunta