2017-03-16 2 views
0

VS2015로 개발 된 ASP.Net MVC 웹 사이트가 있습니다. EditBatchController라는 컨트롤러가 있습니다. 이것은 자바 스크립트 Ajax 호출에서 게시 된 "다시 제출"메서드를가집니다. 여기 RedirectToAction이 잘못된 위치로 리디렉션 됨

통화의 :

self.resubmit = function() { 
    var data = { Recs: ko.toJS(this.recs) }; 

    $.ajax({ 
     type: "POST", 
     url: BASE_URL + 'EditBatch/Resubmit', 
     data: ko.toJSON(data), 
     contentType: 'application/json', 
     async: true, 
     success: function (data) { 
      window.location = BASE_URL + 'EditBatch/Index'; 
     }, 
     error: function (data) { 
      toastrs(false); 
     } 
    }); 

을 그리고 여기 컨트롤러의 다시 제출 방법의 서명입니다 :

[HttpPost] 
//Called by the Knockout View Model to update db 
public void Resubmit(List<EditBatchViewModel>recs) 
{ 

이 방법의 끝에서, 나는 "인덱스"조치로 리디렉션 싶습니다 다른 컨트롤러의, 그래서 나는 다음과 같습니다 :

RedirectToAction(actionName: "Index", controllerName: "APInvoicesSummaryController"); 

내 문제는, 내가 성공하지만,이 시간 RedirectToAction 여러 번 이전에 사용했던

fiddler

:이 표시되는 다음 피들러 화면 잡아에서 - 라인, EditBatch/인덱스에 대한 GET 요청이 아니라 APInvoicesSummaryController/인덱스에 대한보다 발행은 나는 곤두박질 친다. 아무도 내가 잘못 간 곳을 말해 줄 수 있습니까?

+1

또한 controllerName에 대해 APInvoicesSummaryController가 아닌'APInvoicesSummary'를 사용합니다. –

답변

0

Doh! 내가 게시하면 즉시 내 실수를 볼 수 있습니다. 리디렉션은 "EditBatch는"자바 스크립트에서 오는 방법 -이 다른 나는 미래에 나처럼 피곤 누군가를하는 데 도움이

success: function (data) { 
       window.location = BASE_URL + 'EditBatch/Index'; 

희망을, 어쩌면 나 - 드물지 않다!

관련 문제