0

我试图设置HttpWebResponse控制器返回的值,但我无法创建HttpWebResponse对象。

现在我只想设置状态码,但也许我很快HttpWebResponse也需要课程的其他部分。我现在所能做的就是将字符串作为状态返回,这显然是错误的,因为Get方法已经返回了其他数据。

这是我的控制器(只是一个测试应用程序,用于了解 REST 服务器和客户端的实现方式以及它们如何通信):

public class TeamsController : ApiController
{
    public static List<Team> teams = new List<Team>() 
    {
        new Team  { Kuerzel = "BVB09",Name="Borrusia Dortmund", Stadt="Dortmund"},
        new Team  { Kuerzel = "RWE",Name="Rot Weiss Essen", Stadt="Essen"}
    };

    public IEnumerable<Team> GetAllTeams()
    {
        Console.WriteLine("All teams returned");
        return teams;
    }

    public Team GetTeamById(int id)
    {
        if (id < teams.Count)
        {
            Console.WriteLine("Team with ID=" + id + " returned");
            return teams[id];
        }
        else
            return null;
    }

    public string PostNewTeam(Team team)
    {
        teams.Add(team);
        Console.WriteLine("Post Team: " + team.ToString());
        return "Success";
    }

}
4

2 回答 2

1

在方法返回期间使用using System.Net.Http;和添加;Post() 方法的返回类型应该是return Request.CreateResponse(HttpStatusCode.OK, "success");PostNewItem()HttpResponseMessage

于 2016-04-19T12:08:46.300 回答
0

你可以试试这个:

public IHttpActionResult PostNewTeam(Team team)
{
    teams.Add(team);
    // Console.WriteLine("Post Team: " + team.ToString());
    return this.StatusCode(HttpStatusCode.Created);
}
于 2016-04-19T12:21:52.947 回答