2010-06-19 7 views
0

나는 Raven DB 및 MVC 2를 가지고 놀고 있습니다. 기본적으로 Raven의 ID는 예를 들어 다음과 같습니다. 제안 (Suggestion)이라는 엔티티에 대한 "suggestions/1234"라우팅에 문제가있는/발생합니다.

<%: Url.Action("Delete", "Suggestion", new { id = suggestion.Id }) %> 

URL이/제안/삭제/제안/작동하지 않습니다 14,337있을 것입니다 :이처럼 쓸 때

이 라우팅 문제가 발생합니다.

라우팅에서 해결할 수 있습니까, 아니면 Raven에서 ID의 형식을 변경해야합니까? 그리고 어떻게해야합니까?

답변

3

경로를 {controller}/{action}/{id}에서 {controller}/{action}/{*id}으로 변경하십시오. 이를 "포괄적 인"경로라고합니다. 자세한 내용은 on MSDN.

또는 id을 쿼리 매개 변수로 전달할 수 있습니다.

+0

좋은 생각이지만 마지막 매개 변수에서만 작동합니다. –

0

기본적으로 슬래시를 인코딩 할 수 없습니다. ID가 suggestions_1234 또는이 설정을 사용하려고하는

변경 :는 config 설정이 아직 작동하는 경우

<uri> 
    <schemeSettings> 
     <add name="http" genericUriParserOptions="DontUnescapePathDotsAndSlashes" /> 
    </schemeSettings> 
</uri> 

내가 확인하지 않았다. 축구가 5 분 안에 시작되기 때문에 지금 당장은 할 수 없습니다.

URL-encoded slash in URL