C# 从MVC控制器参数调用WebApi方法的C始终为空
我有一个情况,我有一个MVC控制器,我正在调用一个WebApi POST方法。我正在传递DTO作为参数。。。WebApi方法被命中,但参数为null。我错过了什么 谢谢! MVC控制器:C# 从MVC控制器参数调用WebApi方法的C始终为空,c#,asp.net-mvc,C#,Asp.net Mvc,我有一个情况,我有一个MVC控制器,我正在调用一个WebApi POST方法。我正在传递DTO作为参数。。。WebApi方法被命中,但参数为null。我错过了什么 谢谢! MVC控制器: [Authorize] public async Task<ActionResult> Index() { Permissions service = new Permissions(); ViewBag.Title = "Deploymen
[Authorize]
public async Task<ActionResult> Index()
{
Permissions service = new Permissions();
ViewBag.Title = "Deployment Manager";
string uri = System.Web.Configuration.WebConfigurationManager.AppSettings["ApiRestfulUrl"] + "/Permissions";
using (var client = new HttpClient())
{
var permissions = new PermissionsDTO() { UserName = "rherhut" };
var response = await client.PostAsJsonAsync(uri, permissions);
if (response.IsSuccessStatusCode)
{
// Get response data how??
}
}
return View();
}
WebAPI POST方法:
public HttpResponseMessage Post(HttpRequestMessage request, [FromBody]PermissionsDTO permissions)
{
var data = repository.HasAdminRights(permissions.UserName); // permissions.UserName is null
var response = new ApiResponseCreator<PermissionsDTO>();
return response.FormatReturnData(request, data);
}
我通过使用Serialize属性装饰dto类解决了这个问题,出于某种原因,这起到了作用。权限是否如问题中建议的那样为空,或者权限是否如代码中建议的那样为空。用户名是否为空?请同时为调用此api方法的客户端添加代码?抱歉……权限不是空的,但是permissions.UserName为null。调用WebApi控制器的代码是本文中的第一段代码。