2017-09-07 2 views
0

에 ASHX이 ProcessRequest 변환 :내가 정의 된 다음 메소드를 사용하여 ASHX 파일이 MVC 컨트롤러

public void ProcessRequest(HttpContext context) ... 

은 내가 MVC 컨트롤러로 내부 코드를 이동하고자합니다. 그것은 MVC 컨트롤러에서 쉽게 실행될 수있는 모든 코드입니다. 그러나 동일한 방식으로 호출 될 수 있도록 특정 방식으로 작성해야하는지 확실하지 않습니다. 나는 다음을 시도했다 :

[HttpPost] //in the TestController 
public void Index() 
{ 
    var context = HttpContext; 
.... 

그러나 첫 번째 줄에는 내 브레이크 포인트가 맞지 않는다. ASHX 파일에서 ProcessRequest이 호출되면서 복제되도록 복제를 설정해야하는 또 다른 방법이 있습니까?

편집 :

routes.MapRoute(
     name: "Test", 
     url: "test/{action}", 
     defaults: new { controller = "Test", action = "Index" } 
    ); 
+0

라우팅을 확인하고 게시물이 컨트롤러/작업에 부딪히는 지 확인하십시오. 클라이언트가 호출하는 URL은 무엇입니까? –

+0

인덱스이므로 컨트롤러의 루트 일 뿐이며 루트는 Index를 기본값으로 지정합니다. 게시물을 편집하여 경로를 추가했습니다. – muttley91

+0

Fiddler 또는 Postman을 사용하여 수동으로 해당 끝점에 게시 할 수 있습니까? 엔드 포인트는 어떻게 호출됩니까? GET 색인 작업을 만들고 URL로 찾아 볼 수 있습니까? 수동으로 가져올 수 있다면 문제는 클라이언트 호출입니다. –

답변

0

그것은 내 목적을 위해, 내 액션 메소드가 GET이 아닌 POST해야했다 밝혀 : 여기 내 경로 설정입니다. 그게 내 문제를 해결.

관련 문제