WebApi一个控制器中定义多个Get方法。
2021-04-29 14:29
                         标签:color   显示   defaults   tab   result   param   png   实现   gdb    问题:怎样解决一个ApiControl中定义多个Get方法或者Post方法? 答:要想实现一个ApiControl中定义多个Get方法或者Post方法,则需要在WebApiConfig类中的Register()中自定义路由规则,规则中显示指定action。 示例:   ApiControl中两个Get方法:     注意点:不能定义重复名称的路由,路由名称必须唯一。   WebApi一个控制器中定义多个Get方法。 标签:color   显示   defaults   tab   result   param   png   实现   gdb    原文地址:http://www.cnblogs.com/longdb/p/7819138.html       // Web API 路由
            config.MapHttpAttributeRoutes();
            //自定义指定action的路由。2017.11.11 14:56 added by longdb
            config.Routes.MapHttpRoute(
                 name: "WebApiTest",
                 routeTemplate: "api/{controller}/{action}/{id}",
                 defaults: new { id = RouteParameter.Optional }
             );
            //默认路由规则。
            //config.Routes.MapHttpRoute(
            //    name: "WebApiTest",
            //    routeTemplate: "api/{controller}/{id}",
            //    defaults: new { id = RouteParameter.Optional }
            //);
 public class WebApiTestController : ApiController
    {
        [HttpGet]
        public string GetString()
        {
            string sql = @"SELECT TOP 10 0 cnt, ‘1‘ ck,no,name,object,score,id FROM dbo.infor 
                WHERE id  IN(SELECT TOP 10 id FROM dbo.infor ORDER BY id)
                UNION ALL
                SELECT COUNT(id) cnt,‘1‘ ck,‘‘ no, ‘‘ name,‘‘ object,‘‘ score,‘‘ id FROM dbo.infor";
            DataTable dt = DBHelper.DBExecuteByAdapter(sql);
            return JSONInterFace.DataTableToJsonWithJsonNet(dt);//.Rows.Count.ToString();
        }
        [HttpGet]
        public IHttpActionResult GetStudentInfor()
        {
            List
>(stlists);//, Newtonsoft.Json.JsonSerializer.CreateDefault.stlists);
        }
    }

上一篇:Windows
下一篇:springboot重新认识