동일한 경로를 가지고 있지만 HTTP 메서드에서만 다른 두 가지 메서드를 내 컨트롤러에 갖고 싶습니다. 특히, 내 노선은동일한 경로에서 2 가지 방법 (GET 및 POST)을 사용할 수 있습니까?
routes.MapRoute(
name: "DataRoute",
url: "Sample/{user}/{id}/",
defaults: new { controller = "Sample", action = "--not sure--", user = "", id = "" }
);
모양과 나는 같은 내 컨트롤러 2 가지 방법이있는 경우 :
[HttpGet]
public void ViewData(string user, string id)
[HttpPost]
public void SetData(string user, string id)
원하는 동작 내가 Sample/a/b
를 GET과 I가 POST 경우 SetData()
를 호출하는 경우 ViewData()
를 호출하는 것입니다 Sample/a/b
, 동일한 URL
2 개의 별도 경로를 만들 수 있지만 설계상의 이유로 하나의 경로가 GET
및 POST
으로 만 구분되기를 원합니다. 새로운 경로를 만들 필요없이 경로 또는 컨트롤러를 구성 할 수있는 방법이 있습니까?
짧은 대답은 아니오입니다. 그러나 당신은 URL을 통해 게시 할 수 없습니다. 그게 당신이 뭘하려고하는지 불분명. –
속성 라우팅을 사용하면 다른 방법으로 동일한 경로를 설정할 수 있어야합니다. – Nkosi