小编sla*_*gey的帖子

ASP.NET Web Api - 将对象发布到自定义操作控制器

我有下一个ApiController

public class ValuesController : ApiController
{
    // GET /api/values
    public IEnumerable<string> Get()
    {
        return new string[] { "value1", "value2" };
    }

    public User CreateUser(User user)
    {
        user.Id = 1000;
        return user;
    }
}
Run Code Online (Sandbox Code Playgroud)

与下一个路线

    routes.MapHttpRoute(
    name: "DefaultApi",
    routeTemplate: "api/{controller}/{action}/{id}",
    defaults: new { id = RouteParameter.Optional });
Run Code Online (Sandbox Code Playgroud)

我想要使​​用这项服务.我可以使用第一种方法:

    var client = new WebClient();
    var result = client.DownloadString(@"http://localhost:61872/api/values/get");
Run Code Online (Sandbox Code Playgroud)

但我不能消耗第二种方法.当我做下一个:

    var user = new User() { Name = "user1", Password = "pass1" };
    var json = Newtonsoft.Json.JsonConvert.SerializeObject(user);
    result = client.UploadString(@"http://localhost:61872/api/values/createuser", json);
Run Code Online (Sandbox Code Playgroud)

我没有附加信息就抓住了下一个例外 …

rest asp.net-mvc json web-services

6
推荐指数
1
解决办法
7240
查看次数

标签 统计

asp.net-mvc ×1

json ×1

rest ×1

web-services ×1