我不知道如何在浏览器中看到get api结果。我尝试使用此Url(http://localhost:8269/api/getproducts
)获取响应,但收到错误:
<Error>
<Message>
No HTTP resource was found that matches the request
URI 'http://localhost:8269/api/getProducts'.
</Message>
<MessageDetail>
No type was found that matches the controller named 'getProducts'.
</MessageDetail>
</Error>
public class ProductsController : ApiController
{
Product[] products = new Product[]
{
new Product { ProductId=1,ProductName="samsung",ProductCategory="mobile",ProductPrice=7889 },
new Product { ProductId=1,ProductName="nokia",ProductCategory="mobile",ProductPrice=7844 },
new Product { ProductId=1,ProductName="lg",ProductCategory="mobile",ProductPrice=7887 },
new Product { ProductId=1,ProductName="xiomi",ProductCategory="mobile",ProductPrice=7856 },
new Product { ProductId=1,ProductName="htc",ProductCategory="mobile",ProductPrice=7833 }
};
public IEnumerable getProducts()
{
return products;
}
}
答案 0 :(得分:3)
您的uri应该是'http://localhost:8269/api/Products'
(默认路由是......)
当您使用Web API 2时,您的示例应该可以正常使用上面的URL。
使用Web API 1时,您的方法应该只调用Get()
或使用[HttpGet]
属性修饰。
[HttpGet]
public IEnumerable getProducts()
{
return products;
}
我建议你仔细阅读asp.net web api和this answer的基础知识。