Mvc: AnchorTagHelper๊ฐ€ ๊ธฐ์กด URL์— ๊ฒฝ๋กœ ์ถ”๊ฐ€

์— ๋งŒ๋“  2015๋…„ 12์›” 18์ผ  ยท  4์ฝ”๋ฉ˜ํŠธ  ยท  ์ถœ์ฒ˜: aspnet/Mvc

์•ต์ปค ํƒœ๊ทธ ๋„์šฐ๋ฏธ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ํŽ˜์ด์ง€์˜ ๊ธฐ์กด URL์— ๊ฒฝ๋กœ๋ฅผ "์ถ”๊ฐ€"ํ•˜๊ณ  ์‹ถ์Šต๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด URL์ด /search?q=foo ์žˆ์Šต๋‹ˆ๋‹ค.

ํ•ด๋‹น ํŽ˜์ด์ง€์— ์•ต์ปค๋ฅผ ๋งŒ๋“  ๋‹ค์Œ URL์— &z=bar ๋ฅผ ์ถ”๊ฐ€ํ•˜๊ณ  ์‹ถ์Šต๋‹ˆ๋‹ค.

๋‹ค์Œ์„ ์‹œ๋„ํ–ˆ์Šต๋‹ˆ๋‹ค.

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

ํ•˜์ง€๋งŒ /search?z=bar ๊ฐ€ ์ƒ์„ฑ๋ฉ๋‹ˆ๋‹ค.

/search?q=foo&z=bar ๋ฅผ ์ƒ์„ฑํ•˜๊ณ  ์‹ถ์Šต๋‹ˆ๋‹ค.

๋‹ค์Œ๊ณผ ๊ฐ™์ด ํ•  ์ˆ˜ ์žˆ๋‹ค๋Š” ๊ฒƒ์„ ์•Œ๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

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

๊ทธ๋Ÿฌ๋‚˜ ๋‚ด ํŽ˜์ด์ง€์— ๊ฐ€๋Šฅํ•œ ์ฟผ๋ฆฌ ๋ฌธ์ž์—ด์ด ๋งŽ์„ ๋•Œ ํ•ญ์ƒ ์ž…๋ ฅํ•˜๊ณ  ์‹ถ์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๊ธฐ์กด ํŽ˜์ด์ง€ URL์— ์ƒˆ ์ฟผ๋ฆฌ ๋ฌธ์ž์—ด ๊ฒฝ๋กœ๋ฅผ ์ถ”๊ฐ€ํ•˜๊ฑฐ๋‚˜ ๋ฎ์–ด์“ฐ๊ณ  ์‹ถ์Šต๋‹ˆ๋‹ค.

๊ธฐ์กด ํƒœ๊ทธ ๋„์šฐ๋ฏธ๋กœ ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๊นŒ ์•„๋‹ˆ๋ฉด ์‚ฌ์šฉ์ž ์ •์˜๊ฐ€ ํ•„์š”ํ•ฉ๋‹ˆ๊นŒ?

enhancement wontfix

๊ฐ€์žฅ ์œ ์šฉํ•œ ๋Œ“๊ธ€

@kspearrin ๋‚˜๋Š” ์ด๊ฒƒ์„ ํ•ด๊ฒฐ ๋ฐฉ๋ฒ•์œผ๋กœ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ํ™•์žฅ ๋ฉ”์„œ๋“œ๋กœ ๋Œ์–ด์™€์„œ ์‚ฌ์šฉํ•˜๊ธฐ ์‰ฝ๊ฒŒ ๋งŒ๋“ค ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

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

๋ชจ๋“  4 ๋Œ“๊ธ€

@kspearrin ์ฃ„์†กํ•ฉ๋‹ˆ๋‹ค. ํ˜„์žฌ TagHelper ์š”์ฒญํ•˜์‹  ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ์–ธ๊ธ‰ํ•œ ํ•ด๊ฒฐ ๋ฐฉ๋ฒ•์€ ์ ์ ˆํ•œ ๋Œ€์•ˆ์ž…๋‹ˆ๋‹ค.

์ผ๋ฐ˜์ ์œผ๋กœ ๋ผ์šฐํŒ…์€ ๊ทธ๋Ÿฐ ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•˜์ง€ ์•Š์ง€๋งŒ ์ด๊ฒƒ์€ ๋ฏธ๋ž˜์— ๋ฉ‹์ง„ ๊ธฐ๋Šฅ์ด ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

@kspearrin ๋‚˜๋Š” ์ด๊ฒƒ์„ ํ•ด๊ฒฐ ๋ฐฉ๋ฒ•์œผ๋กœ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ํ™•์žฅ ๋ฉ”์„œ๋“œ๋กœ ๋Œ์–ด์™€์„œ ์‚ฌ์šฉํ•˜๊ธฐ ์‰ฝ๊ฒŒ ๋งŒ๋“ค ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

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

์ด ๊ธฐ๋Šฅ์„ ๊ตฌํ˜„ํ•  ๊ณ„ํš์ด ์—†์Šต๋‹ˆ๋‹ค.

์ด ํŽ˜์ด์ง€๊ฐ€ ๋„์›€์ด ๋˜์—ˆ๋‚˜์š”?
0 / 5 - 0 ๋“ฑ๊ธ‰