簡體   English   中英

C#從MVC控制器參數調用WebApi方法始終為null

[英]C# Calling WebApi method from MVC controller parameter is always null

我遇到一個我正在調用WebApi POST方法的MVC控制器的情況。 我正在傳遞DTO作為參數... WebApi方法已命中,但參數為null。 我想念什么?

謝謝! MVC控制器:

     [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類來解決此問題,並且出於某些原因,此方法可行。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM