Syntax Problem?
-
Hi!
Hab derzeit etwas C#-Code vor mir, welches ich in
C++/CLI umschreiben will.
An sich ist das ja kein Problem... aber schaffs irgendwie nicht diese
Zeile Code umzuschreiben.Hier der Teil des C#-Codes, der einwandfrei funktioniert:
//... Body b = myDoc.MainDocumentPart.Document.Body; Paragraph p = b.Descendants<Paragraph>().ElementAtOrDefault(0); //...
Und hier will ich es in C++/CLI umschreiben, klappt aber mit dieser Syntax anscheinend nicht:
//... Body^ b = myDoc->MainDocumentPart->Document->Body; //klappt Paragraph^ p = b->Descendants<Paragraph^>()->ElementAtOrDefault(0); //KLAPPT NICHT //...
MVS gibt mir diesen Error aus:
1> DIW.cpp
1>DIW.cpp(144): error C2039: 'ElementAtOrDefault' : is not a member of 'System::Collections::Generic::IEnumerable<T>'
1> with
1> [
1> T=DocumentFormat::OpenXml::Wordprocessing::Paragraph ^
1> ]
1>
1>Build FAILED.Thanks in advance.
-
In C# läuft das als Erweiterungsmethode. In C++/CLI gibts das ned, deshalb so:
Body^ b;// = myDoc->MainDocumentPart->Document->Body; //klappt Paragraph^ p = System::Linq::Enumerable::ElementAtOrDefault(b->Descendants<Paragraph^>(), 0);
-
Vielen Dank an dieser Stelle
Der von dir angegebene Code passt!