在App_Start下新建WebApiConfig.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web.Http;
namespace NFine.Web
{
public static class WebApiConfig
{
public static void Register(HttpConfiguration config)
{
config.Routes.MapHttpRoute(
name: "DefaultApi",
//注意此处的路由前缀统一添加了'api/',以便和mvc路由区分,如果不修改,则会导致路由路径一样,只会进入同一个路由导致出错
routeTemplate: "api/{controller}/{action}/{id}",
defaults: new { id = RouteParameter.Optional }
);
}
}
}
在Controllers文件夹下添加webApi路由 TestController.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Net.Http;
using System.Web.Http;
using Base;
using System.Net.Http.Headers;
using NPOI.HSSF.UserModel;
using NPOI.SS.UserModel;
using System.IO;
namespace NFine.Web.Controllers
{
public class testController : ApiController
{
[HttpGet]
public HttpResponseMessage test()
{
return "hellow world".HttpResponseSerializeObject(true, "");
}
}
在Global.asax中注册路由
using NFine.Code;
using System.Web.Http;
using System.Web.Mvc;
using System.Web.Routing;
namespace NFine.Web
{
public class MvcApplication : System.Web.HttpApplication
{
/// <summary>
/// 启动应用程序
/// </summary>
protected void Application_Start()
{
AreaRegistration.RegisterAllAreas();
//在此处注册webApi的路由
WebApiConfig.Register(GlobalConfiguration.Configuration);
FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters);
RouteConfig.RegisterRoutes(RouteTable.Routes);
}
}
}
运行程序,然后看能否进入正常网页,并且在浏览器内输入http://localhost:1851/api/test/test
,返回{"result":true,"error":"","data":"hellow world"}
,表示成功!