Managed C++ arrays
Har lidt problemer med at få konverteret mellem arrays:Error 2 error C2664: 'PDMWebReference::PDMWebSVCService::createDocument' : cannot convert parameter 2 from 'System::Array ^' to 'cli::array<Type> ^' c:\Development\LaserNet\6.5\Sources\PDMOutputPort\PDM.cpp 629
Source:
result.docID = mDatasource->createDocument(doc, metaData.extendedKeys->ToArray((gcnew PDMWebReference::LineItemDtoWS())->GetType()));
ToArray findes i 2 overloads. Den ene returnerer cli::array<Type>. Den anden en System::Array (som i mit eksempel). Problemet er at createDocument funktionen skal bruge cli::array<LineItemDtoWS>, men hvis jeg gør ovenstående får jeg et System::Array.
Fjerner jeg GetType delen, så får jeg et cli:array men af en forkert type System::Object og ikke en LineItemDtoWS som jeg skal bruge.
Hvordan får jeg konverteret mit array til noget som createDocument forstår?