Объект вложенного значения равен нулю - PullRequest
0 голосов
/ 06 ноября 2018

У меня есть объект, который я отправляю в мой Web Api, как только он попадает в мой webAPI, вложенный объект становится пустым (проблема связана с gatewayRoles)

service.ts

processRequest(request: IRequest) {
  var result;
  var objectToSend = JSON.stringify(request);
  var headers = new Headers();
  headers.append('Content-Type', 'application/json');
  console.log('object to send ' + objectToSend);
  return this._http.post(environment.BASE_API_URL + "XXXX", objectToSend, {
      headers: headers
    })
    .map((res: Response) => res.json())
}

IRequest

import { IGatewayRole } from './gateway-role';

export interface IRequest {
  req_id: number;
  req_type_id: number;
  gatewayRole: IGatewayRole[];
}

IGatewayRole

export interface IGatewayRole {
  id: number;
  name: string;
}

JSON

{
  "req_id": 0,
  "req_type_id": 1,
  "gatewayRole": {
    "id": XXXXX,
    "name": "XXXXXXX"
  }
}

webAPI (данные поступают в webapi правильно, ТОЛЬКО роль шлюза не отображается и значение равно нулю

public class Request {
  public int req_id {
    get;
    set;
  }
  public int req_type_id {
    get;
    set;
  }
  public List < IGatewayRole > gatewayRole = new List < IGatewayRole > ();

}

public class IGatewayRole {

  public int id {
    get;
    set;
  }
  public string name {
    get;
    set;
  }

}

[HttpPost]
[Route("API/XXXXXX/")]
[AcceptVerbs()]
public HttpResponseMessage ProcessRequest(Request val) {

  try {
    sp_processRequestResult result = null; //

    return Request.CreateResponse(HttpStatusCode.OK, _modelFactory.Create(result));
  } catch (Exception ex) {
    return Request.CreateErrorResponse(HttpStatusCode.BadRequest, ex);
  }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...