2014-03-04 2 views
0

나는 4 응용 프로그램은 다음과 같은 색인 작업이있는 asp.net의 MVC가 :MVC 컨트롤러에서 다른 작업으로 리디렉션하는 방법은 무엇입니까?

public ActionResult Index() 
{ 
    if (User.IsInRole("dealer")) 
    { 
     return View(db.Commissions.Where(c => c.Dealer.Name == User.Identity.Name)); 
    } 
    else 
    {//admin 
     return View(db.Commissions); 
    } 
} 
내가 다른 MVC 행동이라는 필터에 내 페이지를 리디렉션 싶습니다하지만이 코드를 완수하지 못할

:

$(function() { 
     jQuery.noConflict() 
     $("#datefrom").datepicker(); 
     $("#dateto").datepicker(); 

     $("#btnfilter").click(function() { 
      $.ajax({ 
       type: "get", 
       url: "/commissions/filter/", 
       data:{'from':$("#datefrom").val(),to:$("#dateto").val()} 
       ,success: function(result){ 
        if(result.Success){ 
         window.location = "/Filter/Commissions" + $("#datefrom").val() + $("#dateto").val(); 
        } 
       } 
      }); 
     }); 

    }); 

이 필터 동작입니다 : 필터 작업을 서버에 타격

public ActionResult Filter(DateTime from, DateTime to) 
     { 
      if (User.IsInRole("dealer")) 
      { 
       return View(db.Commissions.Where(c => c.Dealer.Name == User.Identity.Name && c.CreatedDate>=from && c.CreatedDate <=to)); 
      } 
      else 

      {//admin 
       var test = db.Commissions.Where(c => c.CreatedDate >= from && c.CreatedDate <= to); 
       return View(db.Commissions.Where(c=>c.CreatedDate >= from && c.CreatedDate <= to)); 
      } 
     } 

하지만 내가 피들러에서 볼 때 나는 다음과 같은 오류가 발생합니다 :

[InvalidOperationException: The view 'filter' or its master was not found or no view engine supports the searched locations. The following locations were 

어떻게 해결할 수 있습니까?

+2

보기 파일 Filter.cshtml이 있습니까? –

+1

아약스 호출 성공시, 잘못된 URL을 전달하고 있다고 생각합니다. "/ 필터/커미션"대신 "/ 커미션/필터"를 사용해야합니다 – 111

답변

0

시도해보십시오. 코드 동작에서 true/false을 반환하는 코드에는 의심의 여지가 있습니다.

$(function() { 
    jQuery.noConflict() 
    $("#datefrom").datepicker(); 
    $("#dateto").datepicker(); 

    $("#btnfilter").click(function() { 
     $.ajax({ 
      type: "get", 
      url: '@Url.Action("filter","commissions")', 
      data:{'from':$("#datefrom").val(),to:$("#dateto").val()}, 
      success: function(result){ 
       if(result.Success){ 
        window.location.href = '@Url.Action("filter","commissions",new{from=$("#datefrom").val(),to=$("#dateto").val()})'; 
       } 
      } 
     }); 
    }); 

}); 
+0

필터 동작이 문제가되지 않습니다. – user603007

+0

그렇다면 올해의 문제는 무엇입니까? – Amit

+0

결과가 업데이트되지 않습니다. 즉, 결과가 필터링되지 않습니다. – user603007

관련 문제