2016-11-10 4 views
0

Ich versuche, Hyperlinks Adresse aus Word-Dokument aus jedem Absatz mit OpenXML abrufen.So finden Sie Word-Hyperlink mit OpenXML

public static string GetAddressFromPara(Paragraph Paras) 
{ 
    IEnumerable<Hyperlink> hplk = Paras.Descendants<Hyperlink>(); 
    if (hplk != null) 
    { 
     foreach (Hyperlink hp in hplk) 
     { 
      //string address = ???????; 
     } 
    } 
} 

Antwort

0

Ich glaube, es

sein sollte
foreach (Hyperlink hp in hplk) 
{ 
    hyperlinkText = new StringBuilder(); 
    foreach (Text text in hp.Descendants<Text>()) 
     hyperlinkText.Append(text.InnerText); 

    hyperlinkRelationshipId = hp.Id.Value; 


    ExternalRelationship hyperlinkRelationship = doc 
     .MainDocumentPart 
     .ExternalRelationships 
     .Single(c => c.Id == hyperlinkRelationshipId); 

    hyperlinkUri = new StringBuilder(hyperlinkRelationship.Uri.AbsoluteUri); 
} 
+0

Danke für Ihre Antwort. Fehler gefunden 'Sequenz enthält kein passendes Element' in der Zeile ExternalRelationship hyperlinkRelationship = doc ..... –

+0

Diese Antwort ist auf der Suche nach der Link-URL von einem Hyperlink in Word mit openxml und C# gelandet. Es ist HyperlinkRelationships nicht ExternalRelationships. Ich habe auch den Sequenzfehler bekommen, bis ich ihn geändert habe. Hallo – Lysis