创建的项目类型为web应用程序,模板选择空,核心引用钩上 webapi,或者通过管理NU GET程序包添加aspnetwebapi,使用同样的方法添加jquery相关的资源。
1.建立Controllers,通常文件命名为“Controllers”,里面的类也是以Controller结尾,如CompanyController.
2.控制类继承ApiController,需要添加引用:using System.Web.Http;
3.在控制类中添加方法:
A typical RESTful endpoint will respond to the following HTTP verbs:
-
GET - Used when a browser is requesting data from the server
-
PUT - Typically used when updating an item
-
POST - Typically used when creating a new item
-
DELETE - Used when deleting an item
4.添加Get方法:注意,要将LINQ转换成强类型的类,客户端才可以反序列化。
public List<Models.Company> Get()
{
var employees = from e in _content.Company
select new Models.Company()
{
CompanyName = e.CompanyName,
Industry=e.Industry,
CustomerId=e.CompanyID
};
return employees.ToList();
}
5.建立Router,在global里的Application_Start事件中添加如下代码:
RouteTable.Routes.MapHttpRoute(
name: "DefaultApi", routeTemplate: "api/{controller}/{id}",
defaults: new { id=RouteParameter.Optional}
);
要添加引用:
using System.Web.Routing;
using System.Web.Http;
6.在控制类中添加相应的方法,注意,返回集合使用的数据类型为
IEnumerable,如 return products;
反回单个对象用 IHttpActionResult,如return Ok(product);
数据为空时返回:returnNotFound();
这样就可以访问这样的网址了:http://localhost:3593/api/Company