2011-12-03 6 views
0

検索アクションから詳細アクションまで検索文字列を渡していますが、詳細アクションで受け取ったときにはnullになることが判明しました。私はMVC3および.NET Framework 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利用( "詳細"、新しい{ID = search.Trimを()})。 –

+0

ありがとう@SreenathPlakkat、@Romias !!その仕事は今:) – 14578446

0

あなたはあなたが同じコントローラであり、それはのActionResultを返すので、ちょうど()詳細を返すことができるはずです。

関連する問題