Pergunta

Eu estou movendo-se de um design do site antigo para um novo projeto com a nova URL.

Todos os nomes de páginas anteriores foram arquivos estáticos chamados PageXX.html, PageX.html, Index.html - onde X é um número

.

Meu site é agora dinâmico, mas eu quero armadilha para aqueles 3 URL de entrada do e, em seguida, tentar e redirecionamento para uma determinada página nova (301 Redirect) else enviá-los para a página inicial.

eu faço tudo isso em Global.asax ou eu só armadilha aqueles Url do no Global.asax e, em seguida, encaminhá-lo para uma ação e fazer um redirecionamento 301 em Acção?

Qualquer exemplos de código ajudaria muito!

Graças

EDIT: Acho que o que precisa ser feito é prender as rotas no Global.asax e, em seguida, enviá-los para uma acção que vai trabalhar fora para onde enviar o usuário ie. uma página semelhante no novo site o mais vou enviar para a página inicial.

Foi útil?

Solução

Isso mesmo, apenas fazê-lo em sua configuração de rotas (geralmente no global). Você pode configurá-los como casos especiais estáticos.

routes.MapRoute("Page3", 
            "SomeURL/Page3.html",
            new { 
                  controller = "SomeController",
                  action = "SomeAction",
                  page = "2"
                });

Outras dicas

Para páginas PageXX.html, PageX.html, index.html você pode fazer a correspondência regular, baseada em expressão também. Isso vai permitir-lhe manter a coisa toda com um mapeamento de rota única.

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