Mvc: AnchorTagHelper Anexar Rotas ao Url Existente

Criado em 18 dez. 2015  ·  4Comentários  ·  Fonte: aspnet/Mvc

Eu gostaria de usar o auxiliar de tag âncora para "anexar" rotas a um URL existente da página. Por exemplo, estou em uma página com o URL /search?q=foo .

Gostaria de criar uma âncora nessa página que adiciona &z=bar ao URL.

Tentei o seguinte:

<a asp-route-z="bar">Load</a>

Mas isso gera /search?z=bar .

Eu quero que ele gere /search?q=foo&z=bar .

Eu sei que poderia fazer isso de algo como:

<a asp-route-q="@query["q"]" asp-route-z="bar">Load</a>

mas quando minha página tem um grande número de strings de consulta possíveis, não quero ter que digitá-las o tempo todo. Eu só quero acrescentar, ou substituir, novas rotas de string de consulta para o URL da página existente.

Isso é possível com os auxiliares de tag existentes ou exigirá algo personalizado?

enhancement wontfix

Comentários muito úteis

@kspearrin Tenho usado isso como uma solução alternativa. Você pode colocá-lo em um método de extensão para torná-lo mais fácil de usar.

<a asp-all-route-data="Context.Request.Query.ToDictionary(q => q.Key, q => q.Value.ToString())" asp-route-z="bar" />

Todos 4 comentários

@Kspearrin , no momento não é possível com TagHelper s fazer o que você está pedindo. No entanto, as soluções alternativas que você mencionou são alternativas apropriadas.

O roteamento em geral não oferece tal coisa, mas isso pode ser um recurso interessante no futuro.

@kspearrin Tenho usado isso como uma solução alternativa. Você pode colocá-lo em um método de extensão para torná-lo mais fácil de usar.

<a asp-all-route-data="Context.Request.Query.ToDictionary(q => q.Key, q => q.Value.ToString())" asp-route-z="bar" />

Não há planos para implementar esse recurso.

Esta página foi útil?
0 / 5 - 0 avaliações

Questões relacionadas

miroslavsiska picture miroslavsiska  ·  4Comentários

iXmonvi33 picture iXmonvi33  ·  4Comentários

hikalkan picture hikalkan  ·  4Comentários

CezaryRynkowski picture CezaryRynkowski  ·  4Comentários

bugproof picture bugproof  ·  3Comentários