Как передать текущий rowID в оператор CopyOrMoveRowDirective, используя C # и Smartsheet-API? - PullRequest
1 голос
/ 23 апреля 2019

У меня есть код на C #, который перемещает строку с одного листа на другой, но я могу заставить его работать, только если жестко закодировать идентификатор строки в строке CopyOrMoveRowDirective.

Каков синтаксис для передачи идентификатора строки в оператор? Я пробовал rowm.ID вместо 80233296095108, но я получаю синтаксическую ошибку.

Вот упрощенная версия кода, но необходимо передать текущий rowid, когда я перебираю цикл.

foreach (Row rowm in sheet.Rows)

{

       {

          CopyOrMoveRowDestination destination = new CopyOrMoveRowDestination { SheetId = 336102784558980 };

          CopyOrMoveRowDirective directive = new CopyOrMoveRowDirective { RowIds = new long[] { 80233296095108 }, To = destination };

          CopyOrMoveRowResult results = smartsheet.SheetResources.RowResources.MoveRowsToAnotherSheet(3267158118557572, directive, null, null);

       }

}

1 Ответ

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

После долгих проб и ошибок у меня все работает.Потребовалась 1 дополнительная строка кода и изменение строки CopyOrMoveRowDirective.Я добавил long rowmId = rowm.Id.Value;как новая строка кода.И затем обновленная директива CopyOrMoveRowDirective = new CopyOrMoveRowDirective {RowIds = new long [] {rowmId}, To = destination};

...