2011-09-03 2 views
1

그래서 개인 MVC 프로젝트를 연습하고 있습니다. 웹 서비스에 대한 AJAX 호출을 사용하여 페이지를 업데이트하고 전체 게시물을 다시 할 필요가없는 응답을 좋아합니다.포스트 백이없는 페이지 업데이트에 대한 제안을 찾고

내 지식이 제한되어 있으며 자바 스크립트로이를 수행 할 수 있다는 것을 알고 있습니다.

그러나 새 개발자의 관점에서 볼 때 한 가지 문제가 있습니다. 도메인 객체에 대한 CRUD 작업에 대해 대부분의 사이트에서 이와 동일한 동작을 수행해야한다고 가정합니다. 따라서 Javascript (디버깅, 유닛 테스트, 강력한 유형 등)로 핸드 홀드가 부족한 (다시 새로운 개발자에게).

하지만 내 지식이 부족하여 웹 서비스에 대한 javascript/ajax 호출을 사용하여 모든 crud 작업을 수행하지 않고도 MVC에서 이와 똑같은 행동을 얻을 수있는 방법이 있습니까?

참고 : 자바 스크립트의 내 느슨한 발언에 대해 저를 기습하기 전에 .... 나는 자바 스크립트를 좋아하고, 나는를 얻기 위해 모든 CRUD 작업을 위해 그것을 사용하여 만든 점의 일부를 부정 할 수있는 방법이있을 수 있습니다 내가 모르는 행동을 찾는다.

+1

@Davide - 익숙하고 javascript 및 jQuery를 사용했으며 MVC가 Webforms가 아니라는 것을 알고 있습니다. 제 질문에 대한 최선의 방법을 사용하고있었습니다. 우리는 세상을 처음으로 깨닫는 사람이 아무것도 배울 필요없이 웹 개발에 대한 모든 것을 아는 것으로 나타났습니다. 나는 당신이 할 일이 없다면 쓸모없는 말을 게시 할 것입니다. – pghtech

+1

자바 스크립트, http : //www.jsunit에 대한 단위 테스트를 수행 할 수 있습니다.net /, 그리고 디버깅은 Firefox/Firebug 또는 IE 개발자가 꽤 잘 작동합니다. – tvanfosson

답변

1

질문에 따라 MVC 용 UpdatePanel을 찾는 것처럼 보입니다. 이 컨트롤은 ASP.NET MVC에는 유효하지 않지만 AJAX (Microsoft.Ajax lib 또는 jQuery와 같은 것)를 사용하고 컨트롤러에서 PartialView를 반환하여 비슷한 기능을 수행 할 수 있습니다. Telerik의 사이트에서이 기술에 대해 괜찮은 tutorial이 있습니다. (단지 자신이 컨트롤을 렌더링하는 부분을 무시합니다. 거의 모든 것을 렌더링 할 수 있습니다.)

귀하의 요구 사항을 충족시키지 못한다면 페이지 또는 페이지에서 AJAX와 유사한 동작을 수행하기 위해 어느 정도의 JavaScript가 필요합니다.

방금 ​​이미 테스트 AJAX 호출 (예를 들어, jQuery.ajax())를 호출 할 필요가 있도록 AJAX 호출 동작을 포장하기 위해 jQuery 또는 MooTools 같은 자바 스크립트 프레임 워크를 사용하는 것이 좋습니다. 그러면 JavaScript가 페이지를 업데이트하는 콜백 처리기가됩니다.

서버 측에서는 MVC (ASP.NET MVC라고 가정하고 있음)를 사용하기 때문에 컨트롤러가 ActionResult 대신 JsonResult을 반환 할 수 있으며 컨트롤러 대신 CRUD 작업을 수행 할 수 있습니다. 별도의 웹/WCF 서비스 제품군을 만듭니다. (jQuery.ajax() 호출에도 ActionResult을 반환 할 수 있습니다.)

웹 사이트에서 AJAX 스타일 동작을 수행하기 위해 JavaScript에서 벗어날 수는 없을 것입니다. 컨트롤러에 포함시킬 수있는 웹 서비스 세트를 만들지 않아도됩니다.

이것은 아마도 당신이 원하는 것을 얻게 될 것입니다. 추가 통찰력을 얻기 위해 ASP.NET 웹 사이트 tutorial을 확인해 볼 수도 있습니다 (단, 질문의 단원 테스트 부분으로 연결되지는 않습니다).

관련 문제