【发布时间】:2014-02-13 14:44:46
【问题描述】:
我有一个现有的 .NET 4 控制台应用程序,我想开始公开一个 REST API。我正在使用 Microsoft 自托管 Web API 库来公开该 API,但我无法理解路由路径是如何开发的。
这是一个控制器示例,它应该公开一些我的控制台应用程序已经处理的数据库对象:
public class UserController : ApiController
{
UserInformation[] users;
public IEnumerable<UserInformation> GetAllUsers()
{
// snip.
}
public UserInformation GetUserById(int id)
{
// snip.
}
}
我在 Program.cs 中公开我的 API,如下所示:
var config = new HttpSelfHostConfiguration("http://localhost:8800");
config.Routes.MapHttpRoute(
"API Default", "api/{controller}/{id}",
new { id = RouteParameter.Optional });
using (var server = new HttpSelfHostServer(config)) { // code }
鉴于上面的代码,我希望我可以通过发出 http://localhost:8800/api/users 和 http://localhost:8800/api/users/1 之类的 http 请求来获取资源,但这些似乎不起作用。 GET 请求的控制器部分是如何创建的?用户似乎不是 API 的正确路由路径,但我不确定那里是什么。
感谢您的帮助
【问题讨论】:
标签: c# .net rest asp.net-web-api