2011-12-03 1 views
0

검색 동작에서 세부 동작으로 검색 문자열을 전달하고 있지만 세부 동작에서받은 동작은 null로 판명됩니다. 내가 MVC3 및 .NET 프레임 워크 4.0을 사용하고동일한 컨트롤러에서 한 동작에서 다른 동작으로 문자열 전달

:

public ActionResult Search(string search) 
{ 
    if (string.IsNullOrEmpty(search)) 
     return RedirectToAction("Index"); 

    return RedirectToAction("Details", "Invoice", search = search.Trim()); 
} 

public ActionResult Details(string id) 
{ 
    if (string.IsNullOrEmpty(id)) 
     return RedirectToAction("Index"); 

    ObjectParameter[] parameters = new ObjectParameter[3]; 
    parameters[0] = new ObjectParameter("CUSTNMBR", id); 
    parameters[1] = new ObjectParameter("StartDate", System.DateTime.Now.Date.AddDays(-90)); 
    parameters[2] = new ObjectParameter("EndDate", System.DateTime.Now.Date); 

    return View(_db.ExecuteFunction<Models.Invoices>("uspGetCustomerInvoices", parameters).ToList<Models.Invoices>()); 
} 

답변

0

당신은 사용해야

return RedirectToAction("Details", "Invoice", new { id = search.Trim() }); 
+0

그냥 리턴 RedirectToAction USE ("세부 사항", 새 {ID = search.Trim을()}); –

+0

감사합니다 @SreenathPlakkat, @Romias !! 그 일하는 지금 :) – 14578446

0

당신은 당신이 동일한 컨트롤러에 있고 그것이 ActionResult를 반환하기 때문에 단지() 정보를 반환 할 수 있어야한다.