2016-09-12 1 views
0

webgridextension.cs 파일을 사용하여 페이지 매김을 사용하는 웹 그리드를 구현했습니다. 동일한 페이지에는 검색과 같은 여러 가지 작업을 수행하는 여러 개의 단추가 있으며 Excel을 얻고 pdf를 얻으십시오. 다른 양식 제출을 수행하기 위해 나는 action selector 속성을 가진 multiplebutton을 사용했다. 그리드까지 페이지 번호를 클릭하면 기본 동작 인덱스로 이동했습니다.mvc asp.net에서 페이지 번호를 클릭하면 다른보기로 리디렉션하는 방법

여기에 내가

당신이 나를 도와주세요 수 있습니다 .. 페이지의 모델 (이미로드)와 다른 액션 GetRFQData로 이동합니다.

WebGrid grid = new WebGrid(null, rowsPerPage: 25, canPage: true, defaultSort: "RFQID"); 

grid.Bind(Model != null ? Model.RFQSearchResults != null ? Model.RFQSearchResults 
               : new List<Shipsurance.Model.RFQ>() 
       : new List<Shipsurance.Model.RFQ>(), rowCount: Model != null ? Model.TotalRowsCount :25, autoSortAndPage: false); 

[AttributeUsage(AttributeTargets.Method, AllowMultiple = false, Inherited = true)] 
public class MultipleButtonAttribute : ActionNameSelectorAttribute 
{ 
    public string Name { get; set; } 
    public string Argument { get; set; } 

    public override bool IsValidName(ControllerContext controllerContext, string actionName, MethodInfo methodInfo) 
    { 
     var isValidName = false; 
     var keyValue = string.Format("{0}:{1}", Name, Argument); 
     var value = controllerContext.Controller.ValueProvider.GetValue(keyValue); 

     if (value != null) 
     { 
      controllerContext.Controller.ControllerContext.RouteData.Values[Name] = Argument; 
      isValidName = true; 
     } 

     return isValidName; 
    } 
} 

[MultipleButton(Name = "action", Argument = "GetRFQData")] 
    public ActionResult GetData(Shipsurance.Model.RFQ rfqModelData) 
    { 
     SerachRFQ getRFQDetails = new SerachRFQ(); 
     return View("Index", getDetails.getResults(rfqModelData)); 

    } 
+0

model-view-controller 태그는 패턴에 대한 질문입니다. ASP.NET-MVC 구현을위한 특정 태그가 있습니다. –

답변

0

RedirectToAction() 메서드를 사용할 수 있습니다.

return RedirectToAction("Your action", model); 
관련 문제