您好我正在尝试将azure中的C#webservice与get和a post同时组合,我们的想法是通过uniqueCDcode获取CD的详细信息,并且webservice只输出json信息和uniqueCDcode需要存储在一个不同的表CDClicked我得到所有clickedCD的列表,所以我能够采取最后的50趋势等,但似乎并没有真正让它工作。这就是我到目前为止所拥有的
//// WS# 00002 GET THE ALBUM DETAILS
[Route("api/Music/Album/{uniqueCDcode}")]
public HttpResponseMessage GetAlbum(int uniqueCDcode)
{
return Request.CreateResponse(HttpStatusCode.OK,
new { AlbumMusic = db.Music
.Where(am => am.uniqueCDcode == uniqueCDcode);
db.CDClicked.Add(uniqueCDcode);
}
答案 0 :(得分:2)
您需要检索您的记录/执行保存,然后返回响应。对dbContext(第二部分)的Add()方法调用不起作用,因为return语句首先返回一个值,然后停止服务的执行,所以它永远不会到达第二部分。你的逻辑需要在return语句之前完成。
例如:
[Route("api/Music/Album/{uniqueCDcode}")]
public HttpResponseMessage GetAlbum(int uniqueCDcode)
{
db.CDClicked.Add(uniqueCDcode);
return Request.CreateResponse(HttpStatusCode.OK,
new { AlbumMusic = db.Music
.Where(am => am.uniqueCDcode == uniqueCDcode )});
}
您在代码中也遇到了一些格式问题。你的大括号和parens没有匹配(至少在你粘贴到SO中的代码中)。我在下面的答案中纠正了。
注意:由于与飓风有关的问题,我目前无法测试代码,但这是让您重新开始的一般概念。