2012-04-25 4 views
0

나는 mvc 응용 프로그램을 가지고 있습니다. 컨트롤러 동작 코드에서 자바 스크립트 함수를 호출하려고합니다 ... 내 생각은 여기에 사용자가 http://localhost/somecontroller/someaction/id을 쳤을 때 컨트롤러가 Create 함수를 실행해야합니다.이 함수에서 나는 xhrget을 사용하여 얻고 있습니다. Web 서비스에서 정보가VB.NET MVC 컨트롤러에서 JavaScript 함수를 호출하는 방법은 무엇입니까?

여기
Create: function (obj) 
{ 
var xhrGet1 = dXhr.get({ 
       url: "http://localhost/SomeService/parameter?id=" + obj.id, 
       handleAs: "json", 
       headers: { 'accept': 'application/json' } 
      }); 
--- 
--- 
--- 
} 

내가 컨트롤러를 시작하는 방법입니다 기능 만들기 내 질문에 내가 컨트롤러 여기

에서 함수를 만듭니다 호출 어떻게되는 view..now하는 것입니다 기록하고 그리고 이것으로 앞으로 나아갈 수 없습니다 ... 어떤 아이디어?

Function somecontroller (id As string) As ... 

감사합니다.

답변

0

직접 아마도 코드가 somecontroller를 사용하여 자바 스크립트 클라이언트 측에서 사는 Create 함수를 호출하려는 경우, 당신은 somecontroller에 살고 초기 요청을 차단하여 ActionResult 방법이 그런 짓을 할 수 있습니다 :

ViewBag.Id = id 

다음 .cshtml보기에 당신은 당신의 페이지로드에이 기능을 추가해야합니다 (하나 jQuery로 $(document).ready() { ... }하거나 window.onload = function() { ... } :

someObj.Create({id: @ViewBag.Id}); 

BUT 이렇게하는 것이 더 좋습니다. 한 가지 간단한 해결책은 컨트롤러에서 http://localhost/SomeService/을 호출하고 결과를 강력한 형식의 모델로보기에 전달하는 것일 수 있습니다.

+0

TimDog ... 감사합니다. "이 간단한 솔루션은 컨트롤러에서 http : // localhost/SomeService /를 호출하고 결과를 전달하는 것일 수 있습니다."실제로 서비스는 나머지 서비스이며 참조를 추가 할 수 없습니다. 프로젝트에서 사용하고 사용할 프록시를 생성합니다. 이 시나리오에서 컨트롤러에서 직접 서비스를 호출하려면 어떻게해야합니까? – Newbie

+0

.NET에서 RESTful 서비스를 쉽게 호출 할 수 있도록 'hammock' 또는'restsharp'를 써드 파티 라이브러리를 검색하십시오. (프록시가 포함되지 않음) – TimDog

관련 문제