Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/google-app-engine/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何在RESTAPI';这是给你的_C#_Asp.net_Rest_Asp.net Web Api - Fatal编程技术网

C# 如何在RESTAPI';这是给你的

C# 如何在RESTAPI';这是给你的,c#,asp.net,rest,asp.net-web-api,C#,Asp.net,Rest,Asp.net Web Api,我有以下情况。 活动很少,每个活动都由朋友组代表 首先,我请求使用简单Get请求实现的事件列表 http://example.com:6400/api/Events/ 对应的RESTAPI:public IEnumerable Get() 现在我可以搜索事件列表,并可以请求特定事件,例如(事件5) 对应的restapi:public-httpresponsemessage-eventdetail(int-id) 但是现在,如果我想收到关于某个朋友的信息(比如说朋友的id是10),那么我就找

我有以下情况。
活动很少,每个活动都由朋友组代表

首先,我请求使用简单Get请求实现的事件列表

http://example.com:6400/api/Events/  
对应的RESTAPI:public IEnumerable Get()

现在我可以搜索事件列表,并可以请求特定事件,例如(事件5)

对应的restapi:public-httpresponsemessage-eventdetail(int-id)

但是现在,如果我想收到关于某个朋友的信息(比如说朋友的id是10),那么我就找不到办法了。我能够实现的一个方法是使用逗号分隔符 获取请求:

http://example.com:6400/api/Events/eventdetail/5,10.  
对应的RESTAPI:不确定???


但我不认为这是最好的方法。是否有任何方法可以实现所需的结果和相应的Rest API。

只要开始接受方法中的两个参数:

public HttpResponseMesssage EventDetail(int id, int friendId) {
    //Do your stuff!
}
相应的URI如下所示:

http://example.com:6400/api/Events/EventDetail/5?friendId=10

请注意HTTP参数名称如何与C#方法名称匹配。有关ASP.NET MVC路由的更多信息,我建议阅读。

谢谢,它很有效。我几天前才开始使用Rest和asp.net,对它不太熟悉。如果需要,还可以创建对Rest路径的支持:{eventId}/{friendId}。另外,我强烈建议在C#中使用ServiceStack实现RESTful服务。
http://example.com:6400/api/Events/EventDetail/5?friendId=10