사람들이 다음과 같은 상황을 어떻게 처리하는지 알고 싶습니다. Asp.Net MVC 경로 - 동일한 서명으로 여러 경로를 처리 하시겠습니까?
우리가 수 DataField 각을 DataField이 DataValues 우리는 이러한 개체
- 의 조작을 처리하기 위해이 컨트롤러가 무제한 DataFieldController
- DataValueContoller
을 가질 수 있다고 가정 이제 새로운 DataValue를 추가해야하는 경우 CustomDataField의 ID를 알아야합니다. ASp.Net MVC 엔진 모델 (IE 아래의 경우에 매개 변수 이름을 결합하기 때문에 다음과 같은 URL이
그러나
/CustomDataValue/Add/1
1 = 수 DataField ID
을 사용됩니다. 내 DatValeu 개체 것 그 ID가 실제로 FieldID를 통과하려고 할 때 ID가 대체 됨)routes.MapRoute(
"Default", // Route name
"{controller}/{action}/{id}", // URL with parameters
new { controller = "Site", action = "Home", id = UrlParameter.Optional } // Parameter defaults
);
어떻게 처리 할 수 있습니까? 다음을 분명히하는 것은 효과가 없습니다.
routes.MapRoute(
"Default", // Route name
"{controller}/{action}/{id}", // URL with parameters
new { controller = "Site", action = "Home", id = UrlParameter.Optional } // Parameter defaults
);
routes.MapRoute(
"Default", // Route name
"{controller}/{action}/{fieldid}", // URL with parameters
new { controller = "Site", action = "Home", fieldid = UrlParameter.Optional } // Parameter defaults
);
나는 이것이 일반적인 문제라고 가정합니다. 나는 그 순간에 명백한 해결책을 찾지 못했습니다. Signature가 다르지만 둘 다/String/String/Int이면 괜찮습니다.
=============
어떻게 이러한 경로가 작동합니까?
- /DataValue/추가/{DataFieldID}
- /DataValue/편집/{ID}
- /DataValue/목록/{DataFieldID} 나는 3 개 경로를 추가해야합니다
? 이 같은 경로에
내 대답을 편집했습니다. 나는 그것이 도움이되기를 바랍니다. 나는 오랫동안 주변에 있지 않을 것이다. 문제가 해결되지 않으면 다시 질문 할 수 있습니다. –