2017-04-03 7 views
0

からDTOにバインドできませんでした、私は「Microsoft.AspNetCore.Mvc」を使用しています:「1.0.1」ASP.NETコアデータは、モデルがASP.NETコアに結合に問題が発生したリクエストボディ

をこれが私ですAPIメソッド

[Route("attach/{buildingId}")] 
[HttpPost] 
[AllowAnonymous] 
public async Task<IActionResult> AttachToBuilding([FromRoute]Guid buildingId,[FromBody] AttachmentDto dto) 

AttachmentDto DTOこれはDTO

public class AttachmentDto 
    { 
     [Required] 
     public string FirstName { get; set; } 
     [Required] 
     public string LastName { get; set; } 
     public string MiddleName { get; set; } 
     public string Phone { get; set; } 
     [Required] 
     public string UniqueDeviceId { get; set; } 
     [Required] 
     public int ApartmentNumber { get; set; } 
     [Required] 
     public int AgreementNumber { get; set; } 
     [Required] 
     public int FloorNumber { get; set; } 
    } 

これでヌル

に等しく、常にあります私はパラメータを渡すためのasp.netコアには多くの問題があった

{ 
     "firstName": "Artem", 
     "lastName": "Lys", 
     "middleName": "Викторович", 
     "phone": "93840958093", 
     "uniqueDeviceId": "879987", 
     "apartmentNumber": "2", 
     "agreementNumber": "3аываыва4545", 
     "floorNumber": "5" 
    } 
+0

にJSONオブジェクトを変換することでしたあなたの 'AttachToBuilding'ビューと' AttachmentDto'モデル –

+0

'firstName' =' FirstName'を表示します! - モデル内で同じ名前を使用 –

+0

私は試してみましたが、それは役に立たなかった – Thugmaster

答えて

0

体リクエストでAPIに送信するデータである、私はこの方法を解決するために管理しています。

[HttpPost] 
    public string Atualizar([Bind("Id,Descricao,Conclusao")] Exame exame) 
    { 
     ... 
    } 

要求

$http({ 
     headers: {'Content-Type': 'application/x-www-form-urlencoded'}, 
     method: "POST", 
     url: URL_API + 'Exames/Atualizar, 
     data: $.param(exame), 
    }).then(function(response) { 
     ... 
    }); 

私にとって、この作品。私の場合で働いへ

秘密は$の.PARAM(exame)

関連する問題