Asp.net mvc 4 HttpResponseMessage中的非泛型类型错误

Asp.net mvc 4 HttpResponseMessage中的非泛型类型错误,asp.net-mvc-4,Asp.net Mvc 4,我刚刚将MVC4WebAPI从beta版更新为RC版,现在这部分代码不起作用。 我在这里读到: 这是我必须使用的 Request.CreateResponse(HttpStatusCode.OK,Response) 但是没有采用两个参数的CreateResponse实现?所以我想知道我应该如何继续修复这部分 public HttpResponseMessage<Response> Login(string username, string password) { Api

我刚刚将MVC4WebAPI从beta版更新为RC版,现在这部分代码不起作用。 我在这里读到: 这是我必须使用的

Request.CreateResponse(HttpStatusCode.OK,Response)

但是没有采用两个参数的
CreateResponse
实现?所以我想知道我应该如何继续修复这部分

public HttpResponseMessage<Response> Login(string username, string password)
{
       ApiResponse<string> user = am.LogOn(username, password);
       System.Diagnostics.Debug.WriteLine(username + " - " + password);
       System.Diagnostics.Debug.WriteLine("User status is: " + user.Status);

       switch (user.Status)
       {   
           case ResponseStatus.OK:
              System.Diagnostics.Debug.WriteLine(user.Value);
              return new HttpResponseMessage<Response>(new Response { Token = user.Value, ValidTo = user.ValidTo });
           default:
              return new HttpResponseMessage<Response>(HttpStatusCode.Forbidden);
       }
 }
公共HttpResponseMessage登录(字符串用户名、字符串密码)
{
ApiResponse user=am.LogOn(用户名、密码);
System.Diagnostics.Debug.WriteLine(用户名+“-”+密码);
System.Diagnostics.Debug.WriteLine(“用户状态为:“+User.status”);
开关(用户状态)
{   
case ResponseStatus.OK:
System.Diagnostics.Debug.WriteLine(用户值);
返回新的HttpResponseMessage(新响应{Token=user.Value,ValidTo=user.ValidTo});
违约:
返回新的HttpResponseMessage(HttpStatusCode.Forbidden);
}
}
但是没有采用两个参数的CreateResponse实现

当然可以

公共HttpResponseMessage登录(字符串用户名、字符串密码)
{
ApiResponse user=am.LogOn(用户名、密码);
System.Diagnostics.Debug.WriteLine(用户名+“-”+密码);
System.Diagnostics.Debug.WriteLine(“用户状态为:“+User.status”);
开关(用户状态)
{   
case ResponseStatus.OK:
System.Diagnostics.Debug.WriteLine(用户值);
return Request.CreateResponse(
HttpStatusCode.OK,
新响应{Token=user.Value,ValidTo=user.ValidTo}
);
违约:
返回请求.CreateResponse(HttpStatusCode.Forbidden);
}
}

我已经试过了,但是VS2010说没有这种重载方法:/RTM中的这种方法非常适合我。它在RC中也起了作用。但是我仍然不能选择它。当我更新到RC时,我使用了这个包。是正确的,还是缺少其他包?那是客户端HttpClient。它与服务器端软件包无关。好的,我还需要安装这个软件包
public HttpResponseMessage Login(string username, string password)
{
    ApiResponse<string> user = am.LogOn(username, password);
    System.Diagnostics.Debug.WriteLine(username + " - " + password);
    System.Diagnostics.Debug.WriteLine("User status is: " + user.Status);

    switch (user.Status)
    {   
        case ResponseStatus.OK:
            System.Diagnostics.Debug.WriteLine(user.Value);
            return Request.CreateResponse(
                HttpStatusCode.OK, 
                new Response { Token = user.Value, ValidTo = user.ValidTo }
            );
         default:
             return Request.CreateResponse(HttpStatusCode.Forbidden);
    }
}