尝试使用参数放置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 :(得分:1)
这是一个GET。为什么看起来你正试图在身体中发送数据?尝试将数据包含为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");
});
}