2010-11-24 4 views
0

컨트롤러의 작동 방식을 파악하려고합니다. 페이지가 처음로드 될 때 분명히 ActionResult Index()이 호출됩니다. 그러나 컨트롤러 내에서 다른 기능을 어떻게 호출합니까?ASP.NET MVC 2 : 컨트롤러 내에서 Html.ActionLink 다른 기능을 사용 하시겠습니까?

Html.ActionLink("Click Me", "ControllerFunction")을 사용해 보았지만 "ControllerFunction"이라는 페이지를 찾았습니다.

내가 할 수 있기를 원하는 것은 뷰 데이터를 업데이트 한 다음 페이지 (또는 Ajax)를 새로 고치는 컨트롤러 내에서 함수를 호출하는 것입니다.

어떻게 작동하나요? 지금 컨트롤러 내에서 유일한 유용한 기능이 Index()

답변

0

컨트롤러 :

public HomeController : Controller 
{ 
    public ActionResult Index() 
    { 
     return View(); 
    } 

    public ActionResult AjaxAction() 
    { 
     return View(); 
    } 
} 

그리고 Index.aspx보기에서 AJAX 요청의 결과를 저장하는 링크와 빈 div가있을 수 있습니다.

그런 다음 자바 스크립트 (내 경우에는 JQuery와)과 강화 것이다
<%: Html.ActionLink("ajax test", "ajaxaction", null, 
    new { id = "ajaxtest" })%> 
<div id="result"></div> 

:

$(function() { 
    $('#ajaxtest').click(function() { 
     $('#result').load(this.href); 
     return false; 
    }); 
}); 

당신이 부분보기 AjaxAction.ascx 렌더링 삽입 할 Ajax 요청이 /home/ajaxlink로 전송됩니다 링크를 클릭

의 내용을 결과 div에 넣습니다.

+0

하지만 컨트롤러 기능의 핵심은 무엇입니까? 그것이하는 모든 일은 다시보기를 반환하는 것이고, 나의 예에서 모든 것은 시도하고 "ajaxaction"과 비슷한 페이지를 찾습니다 ... – dcolumbus

+0

요점은이 컨트롤러 기능 (동작이라고 함)이 사용자 요청에 따라 조작된다는 것입니다 모델, 저장소를 사용하여 데이터베이스에서 데이터를 가져오고, 물론 뷰를 완전히 정적으로 유지하기 전까지 뷰를 반환하기 전에 다른 많은 작업을 수행하십시오. –

0

때문에 당신은 명확 MVC의 기본 사항을 누락 :)

는 MVC이 큰 소개를 살펴 있습니다 http://channel9.msdn.com/blogs/matthijs/aspnet-mvc-2-basics-introduction-by-scott-hanselman

+0

완전히 새로운, 그래! 나는 직장에서 필사적으로 필요하기 때문에 이렇게 배우기를 강요 당하고있다. 그러나 나는 충분히 기꺼이한다. 당신이 나에게 줄 수있는 정보는 절대적으로 훌륭합니다. 감사! – dcolumbus

관련 문제