Я пытаюсь передать значения целочисленного массива в мою конечную точку веб-API asp.net из приложения angular 7. Однако параметр конечной точки равен нулю. Если вы видите ниже, объект результата получает вновь созданные идентификаторы после вставки, и я передаю значения этого объекта результата на сторону сервера. Я вижу объект результата, заполненный значениями. Может кто-нибудь сказать мне, почему конечная точка не получает массив целых чисел. Запрос к конечной точке выглядит примерно так
http://localhost:56888/api/documentupload/detailsByIds/121,124,125
угловой вызов конечной точки
public createDocument() {
const documents: IDocumentDetails[] = this.files.map(doc => {
return { // notice just a curly bracket, and in the same line with 'return'
file: doc.fileDropEntry.fileEntry,
documentTypeId: doc.selectedDocumentItem.Id,
name: doc.name,
documentDate: doc.selectedDate
};
});
this.documents = { managerStrategyId: 0, documentDetails: null };
this.documents.managerStrategyId = this.ManagerStrategyId;
this.documents.documentDetails = documents;
this.documentUploadService.createDocumentUpload(this.documents)
.then((result) => {
if (result) {
this.getDocumentUploadDetailsByIds(result);
this.setGridOptions();
this.setColumns();
this.notify.success('Documents uploaded Successfully');
}
}).catch(err => {
this.notify.error('An Error Has Occured While uploading the documents');
});
}
public getDocumentUploadDetailsByIds(id) {
if (this.ManagerStrategyId != null) {
this.Loading = true;
this.initGrid();
this.documentUploadService.getDocumentUploadDetailsByIds(id)
.subscribe(data => {
this.DocumentUploadDetails = data;
this.Loading = false;
},
err => {
this.Error = 'An error has occurred. Please contact BSG';
},
() => {
});
}
}
getDocumentUploadDetailsByIds(documentIds: number[]) {
return this.mgr360CommonService.httpGet('/api/documentupload/detailsByIds/' + documentIds);
}
asp.net webapi
[HttpGet]
[Route("api/documentupload/detailsByIds/{id}")]
public IHttpActionResult DetailsByIds(int[] id)
{
var viewModel = GetDocumentUploadDetailsByIds(id);
return Ok(viewModel);
}
private DocumentUploadViewModel GetDocumentUploadDetailsByIds(int[] id)
{
var docVM = new DocumentUploadViewModel();
var docSvc = GetViewService<V_DOCUMENT>();
var docs = docSvc.Where(x => id.Contains(x.ID)).ToList();
if (docs != null)
{
docVM.DocumentEntities.AddRange(docs.Select(x => new DocumentUploadEntities()
{
DocumentId = x.ID,
DocumentName = x.NAME,
DocumentTypeId = x.DOCUMENT_TYPE_ID,
DocumentTypeName = x.DOCUMENT_TYPE_NAME,
ManagerStrategyId = x.MANAGERSTRATEGY_ID,
ManagerStrategyName = x.STRATEGY_NAME,
DocumentDate = x.DOCUMENT_DATE.HasValue
? x.DOCUMENT_DATE.Value.ToString("MMM dd, yyyy")
: string.Empty,
}).OrderBy(x => x.DocumentCreated));
}
return docVM;
}