2016-12-12 3 views
1

와 C# MVC에, 매개 변수와 함께 http.get :각도 2 http.get 배치하려고 노력하는 매개 변수

Angular2 서비스 :

getAvailability(customerId) { 
    var Customer = this.Customer.getValue(); 
    var data = ({ 'customerId': Customer.Id, 'eventId': eventId}); 
     console.log("service_data_body", data); 
    this.http.get("GetAvailability", data) 
     .map(res => res.json()).subscribe((x) => { 
      console.log("callback succes"); 
     }); 

} 

MVC 컨트롤러 :

public ActionResult GetAvailability(int? customerId, int? eventId) 
{ 
    var k = customerId; 
    var l = eventId; 
    ....... 
//some other implementation code.... 
} 

내가 아니다 빌드시에는 런타임에 오류가 발생합니다. 디버깅하는 동안 콘솔 로그 값을 제공하지만 중단 점을 배치, C# (var k 및 var l null입니다) 보내지 않은 것 같습니다. 따라서 js 서비스는 변수를 적절한 방식으로 전달하지 않습니다.

어떤 도움을 환영합니다.

+0

이것은 얻은 것입니다. 왜 당신이 본문에 데이터를 보내려고하는 것처럼 보이나요? url 매개 변수로 데이터를 포함 시키십시오. – Nkosi

답변

1

이것은 얻은 것입니다. 왜 당신이 본문에 데이터를 보내려고하는 것처럼 보이나요? url 매개 변수로 데이터를 포함 시키십시오.

getAvailability(customerId) { 
    var Customer = this.Customer.getValue(); 
    var query = "?customerId=" + Customer.Id + "&eventId=" + eventId; 
    console.log("service_data_query", query); 
    this.http.get("GetAvailability" + query) 
     .map(res => res.json()).subscribe((x) => { 
      console.log("callback succes"); 
     }); 

} 
+0

글쎄, 나는 물체를 되찾기 위해 나의 "기준"을 통과시키고있다. 그래서, 당신의 솔루션은 저를 위해 꽤 잘 작동했습니다 (URL을 수정하여 URL의 값을 암호화했습니다). 시간 내 주셔서 감사합니다! – George