Как я могу добавить значение в качестве дополнительного параметра в WebMethodAdaptor или в сообщении Http? - PullRequest
1 голос
/ 01 апреля 2019

Я попытался создать древовидную структуру, где json приходит с сервера, используя операцию POST. В методе post мне нужно отправить значение в теле. Для этого я использую WebMethodAdaptor и addParams, чтобы добавить значение. Вот мой код:

export class AppComponent implements OnInit {
  public hierarchicalData: Object[];
  public projectId = 'projectID';
  public value = 'C03374EC2';
  public field: Object;

  public ngOnInit(): void {
    new DataManager({
      url: SERVICE_URI,
      adaptor: new WebMethodAdaptor
    }).executeQuery(new Query().addParams(this.projectId, this.value))
      .then((e: ReturnOption) => this.hierarchicalData = <Object[]>e.result).catch((e) => true);
    this.field = { dataSource: this.hierarchicalData, id: 'pID', text: 'Name', child: 'Child' };
}
enter code here

Теперь проблема в том, что WebMethodAdaptor отправляет данные в следующих форматах,

{ "значение": { "PARAMS": { "ProjectID": "C03374EC2"}, "ProjectID": "C03374EC2"}}

Но мне нужно,

{ "ProjectID": "C03374EC2" } * +1010 *

Вот пример кода древовидной структуры с использованием локальных данных.

https://stackblitz.com/edit/angular-tree-view2

На самом деле мне нужно что-то подобное. Есть ли способ решить проблему с помощью Syncfusion или любым другим способом? Откуда json приходит с сервера, используя метод post, и отображается в виде дерева.

1 Ответ

2 голосов
/ 02 апреля 2019

Вы можете проверить, правильно ли вы инициализировали параметры на стороне подачи, куда вы извлекаете данные.

[Код серверной стороны]

// initializes params at server side.
public bool requiresCounts { get; set; }
public int skip { get; set; }
public int take { get; set; }
public string data { get; set; }
public Dictionary<string, object> @params { get; set; }

Предоставляя приведенный выше фрагмент кода, вы получите параметры в следующем формате. enter image description here Вот как дополнительные параметры добавляются из запроса на стороне сервера.

Для получения дополнительной информации вы можете проверить ссылки на документацию addparams API и WebMethodAdaptor . Поделитесь своим фрагментом кода (на стороне сервера) или примером, который повторяет вашу проблему, если у вас все еще есть проблема.

...