MVC4
응용 프로그램에 Attribute Routing
을 사용하고 있습니다. 경로를 [Route("test-{testParam1}-{testParam2}")]
으로 설정했습니다. 여기서`{testParam2} '는'test '라는 단어로 구성 될 수 있습니다. 예를 들어 아래와 같이 URL을 입력하면MVC4에서 특성 라우팅이 작동하지 않습니다.
localhost:33333/test-temp-test-tempparam2
이 오류가 발생합니다. 여기 URL에서 은 test tempparam2
의 두 단어로 test-tempparam2
으로 포맷되어 있습니다. test
단어가 {testParam2}
의 마지막 위치에 있으면 잘 실행됩니다. 즉, URL이 .../test-temp-tempParam2-test
과 같으면 잘 실행됩니다. 그러나 다음과 같은 오류가 발생했습니다. .../test-temp-test-tempParam2
. 다음은
[Route ("test-{testParam1}-{testParam2}")]
public ActionResult Foo (int testParam2) {...}
지금이 URL을 다음 시도 ... 도움이 될 수 있습니다 코드입니다. 내 경우
localhost:(port)/test-test-temp-1
localhost:(port)/test-temp-1
- 는 두 번째 오류를 제공합니다. 이 경우 첫 번째 매개 변수는
test temp
에서test-temp
으로 지정됩니다. 처음에는 잘 돌아갑니다.이 문제를 해결하는 방법은 무엇입니까?
{testparam2}를 test_tempparam2로 사용할 수 있습니까? –
GitHub에서이 프로젝트를 살펴보십시오. 너겟 패키지로 배포됩니다. https://github.com/AtaS/lowercase-dashed-route – jvanrhyn
@DhavalR은 문제를 재현하는 데 사용할 수있는 [mcve]를 제공합니다. 그렇게하면 더 나은 답변을 찾을 수 있습니다. – Nkosi