2011-01-12 3 views
1

저는 C#, ASP.NET 및 MVC2에서 절대 초보자이며 예외적으로 기본적인 것이 누락 될 수 있음을 의미합니다. 나는 두 가지 작업으로 기본 컨트롤러를 만들기 위해 노력하고ASP.NET MVC2 : POST 후 GET Details/5로 리디렉션하는 방법 추가

:

내가 검색려고했는데, 여기 다시, 나는 둘 다 구글하지 StackOverflow에 대한 적절한 주술을 마련하는 데 실패, 그래서 여기에 질문을 온다
[HttpPost] 
public ViewResult Create(CustomerCreateData data) 
{ 
    CustomerRecord cr = //create customer record from input data... 

    return RedirectToAction("Details"); 
} 

public ViewResult Details(int id) 
{ 
    CustomerRecord cr = // load customer record with specified id... 
    return View(cr); 
} 

내 아이디어는 POST /Customer/Create 사용자가 GET /Customer/Details/42으로 리디렉션 될 것입니다. 여기서 42는 새로 생성 된 고객 레코드의 ID입니다. 나는 "Index" 조치로 리디렉션의 수많은 사례를 본 적이 있지만 그것은 아주 충분하지 않습니다 - ASP.NET MVC2

PS에서이에 대한 적절한 주문 무엇

.

답변

4

당신은 RedirectToAction 방법에 데이터를 전달할 수 있습니다 :이 중 정의 된 경로가, 예를 들어, 당신을 가정 한 것입니다

return RedirectToAction("Details", new { id = cr.Id }); 

Customer/Details/{id}이거나 여전히 기본 경로가 {controller}/{action}/{id}입니다.

+0

감사합니다. –

1

생성 성공이 (또는 정말이 예를 들어)와 같은 동작을 한 후에에서이 ActionResult 만들기 :

return RedirectToAction("Details", new { Id = cr.Id }); 

이 코드는 정보/ID/{cr.Id}에 리디렉션을 생산하고 있습니다. 나쁜 영어로 죄송합니다 (이탈리아어입니다)