我是Asp.Net新手,在学习过程中尝试开发一个小型的Web API。
WebApiConfig.cs
config.Routes.MapHttpRoute(
name: "DefaultApi",
routeTemplate: "api/v1/{controller}/{id}",
defaults: new { id = RouteParameter.Optional }
);
TopicsController.cs
namespace MessageBoard.Controllers
{
public class TopicsController : ApiController
{
private IMessageBoardRepository _repo;
public TopicsController(IMessageBoardRepository repo)
{
_repo = repo;
}
public IEnumerable<Topic> Get()
{
var topics = _repo.GetTopics()
.OrderByDescending(t => t.Created)
.Take(25)
.ToList();
return topics;
}
}
}
其实我正在看 PluralSight 教程。
http://localhost:50031/api/v1/topics
此 Url 在浏览器中无效,在 Fiddler 4 中无效。
添加了所有引用。我也完成了 Build Solution,但它不起作用,并且代码中没有显示错误。
请您参考如下方法:
启用 Web Api 的最后一步看起来像您缺少的是通过将以下代码行添加到 Application_Start() 方法来在 Global.asax 文件中启用 Web API:
WebApiConfig.Register(GlobalConfiguration.Configuration);
此外,请不要使用 PluralSight 教程中的端口号。您需要从您的 Visual Studio 实例运行 Web 应用程序项目,当它在浏览器中打开时,您将看到分配给哪个端口 您的 api 服务。因此,如果您看到它分配了端口 12345,例如您将调用以下 URL 来访问服务操作:
http://localhost:12345/api/v1/topics
