.net webApi

using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Net.Http;
using System.Web.Http;

namespace MvcApi.Controllers
{
    public class ProductController : ApiController
    {
        public class User
        {
            public string name { set; get; }
        }

        public Dictionary<string, object> GetList(string id)
        {
            Dictionary<string, object> list = new Dictionary<string, object>();
            list.Add("id",id);
            return list;
        }

        public Dictionary<string, object> PostList2(User name)
        {
            Dictionary<string, object> list = new Dictionary<string, object>();
            list.Add("name",name.name);                       
            return list;
        }
    }
}

方法名以post开头的接收POST请求,Get开头的接收GET请求,默认GET;

接收post请求的方法参数必须是实体类:

        public class User
        {
            public string name { set; get; }
        }

访问URI:http://localhost:15172/api/Product/PostList2

http://url/api/控制器/方法名/参数

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web.Http;

namespace MvcApi
{
    public static class WebApiConfig
    {
        public static void Register(HttpConfiguration config)
        {
            config.Routes.MapHttpRoute(
                name: "DefaultApi",
                routeTemplate: "api/{controller}/{action}/{id}",
                defaults: new { id = RouteParameter.Optional }
            );
        }
    }
}

默认返回格式是XML,返回json格式需要在Global.asax.cs里添加:

GlobalConfiguration.Configuration.Formatters.XmlFormatter.SupportedMediaTypes.Clear(); 
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Http;
using System.Web.Mvc;
using System.Web.Optimization;
using System.Web.Routing;

namespace MvcApi
{
    // 注意: 有关启用 IIS6 或 IIS7 经典模式的说明,
    // 请访问 http://go.microsoft.com/?LinkId=9394801

    public class MvcApplication : System.Web.HttpApplication
    {
        protected void Application_Start()
        {
            AreaRegistration.RegisterAllAreas();

            WebApiConfig.Register(GlobalConfiguration.Configuration);
            FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters);
            RouteConfig.RegisterRoutes(RouteTable.Routes);
            BundleConfig.RegisterBundles(BundleTable.Bundles);
            GlobalConfiguration.Configuration.Formatters.XmlFormatter.SupportedMediaTypes.Clear(); 
        }
    }
}



评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值