из Angular 8 / TS У меня нет проблем с отправкой базовых c типов и объектов с базовыми c типами. Но с более сложными моделями я получаю только значения по умолчанию, и я не знаю, что я что-то упускаю.
Здесь вы получили вызов POST от TS и моделей от Angular и C#
Меня интересует, должны ли такие привязки, массивы моделей, выполняться вручную или я что-то не так делаю.
![parameters](https://i.stack.imgur.com/0hv00.png)
![enter image description here](https://i.stack.imgur.com/cbqXy.png)
TS
return this.http.post<void>(environment.apiBaseUrl + 'api/WorkFlow/AddWorkflow', workflowDTO);
export class WorkflowDTO {
id: number;
name: string;
description: string;
stepItemsToDelete: Array<Step>;
stepItemsToAdd: Array<Step>;
stepOrder: Array<StepOrder>;
constructor() {
this.id = 0;
this.name = '';
this.description = '';
this.stepItemsToAdd = [];
this.stepItemsToDelete = [];
this.stepOrder = [];
}
}
export class StepOrder {
id: number;
order: number;
}
export class Step {
id: number;
workflowId: number;
stepTypeId: number;
text: string;
path: string;
stepOrder: number;
stepName: string;
imageFile: string;
}
Контроллер
public int AddWorkflow(WorkflowDTO workflowDTO)
{
if(!ModelState.IsValid) //it is always true
{
return 0;
}
return 1;
}
public class WorkflowDTO
{
public int id { get; set; }
public string name { get; set; }
public string description { get; set; }
public List<Step> stepItemsToDelete { get; set; }
public List<Step> stepItemsToAdd { get; set; }
public List<StepOrder> stepOrder { get; set; }
}
public class Step
{
public int id { get; set; }
public int workflowId { get; set; }
public int stepTypeId { get; set; }
public int stepOrder { get; set; }
public string text { get; set; }
public string path { get; set; }
public string stepName { get; set; }
public string imageFile { get; set; }
}
public class StepOrder
{
public int id { get; set; }
public int order { get; set; }
}
Спасибо серия