Pergunta

Eu acabei de atualizar meu sistema URL velho mapeamento de curinga base para uso System.Web.Routing. Antes, eu era capaz de solicitar a /Service/GetItems<My.Full.Item.Type> URL, que foi analisado no outro lado e voltou exatamente o que você esperaria. Que foi arrumado.

Agora, com roteamento, qualquer solicitação com um em que me retorna o conteúdo de '/' em vez da página que eu queria. Mesmo se eu codificar estes para% 3C e 3E% I redirecionado para a raiz, independentemente do que o resto do URL diz.

Eu gostaria que se eu não tivesse que passar por minha aplicação mudar todas as instâncias de referências genéricas intuitivas para a solução improvisada que eu vim acima com: /Service/GetItems/T=My.Full.Item.Type. Não tão bom, qualquer um.

Obrigado a todos!

Foi útil?

Solução

Parece que você está correndo para o problema caracteres restrito com URLs. Note que isso não tem nada a ver com roteamento, mas com ASP.NET bloqueando certos caracteres dentro da URL.

Por que trabalhar antes com Reescrever URL? Muito provavelmente porque o URL foi reescrito para ter esses caracteres na string de consulta antes de ser entregue ao ASP.NET.

Há algumas coisas que você pode tentar.

Não há uma configuração de registro para permitir caracteres restritos http://support.microsoft.com/kb/820129

Aqui está outro artigo de suporte que está relacionado: http: // support.microsoft.com/default.aspx?scid=kb;EN-US;826437

Em ASP.NET 4, estamos planejando fazer isso muito mais fácil de configurar.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top