Package.CreateRelationship Methode

Definitie

Hiermee maakt u een relatie op pakketniveau met een bepaald onderdeel.

Overloads

Name Description
CreateRelationship(Uri, TargetMode, String)

Hiermee maakt u een relatie op pakketniveau met een onderdeel met een bepaalde URI, doelmodus en relatietype.

CreateRelationship(Uri, TargetMode, String, String)

Hiermee maakt u een relatie op pakketniveau met een onderdeel met een bepaalde URI, doelmodus, relatietype en id (ID).

Voorbeelden

Het volgende voorbeeld illustreert het maken van een PackageRelationship tussen een Package en een hoofddocumentonderdeel.

// Add the Document part to the Package
PackagePart packagePartDocument =
    package.CreatePart(partUriDocument,
                   System.Net.Mime.MediaTypeNames.Text.Xml);

// Copy the data to the Document Part
using (FileStream fileStream = new FileStream(
       documentPath, FileMode.Open, FileAccess.Read))
{
    CopyStream(fileStream, packagePartDocument.GetStream());
}// end:using(fileStream) - Close and dispose fileStream.

// Add a Package Relationship to the Document Part
package.CreateRelationship(packagePartDocument.Uri,
                           TargetMode.Internal,
                           PackageRelationshipType);
' Add the Document part to the Package
Dim packagePartDocument As PackagePart = package.CreatePart(partUriDocument, System.Net.Mime.MediaTypeNames.Text.Xml)

' Copy the data to the Document Part
Using fileStream As New FileStream(documentPath, FileMode.Open, FileAccess.Read)
    CopyStream(fileStream, packagePartDocument.GetStream())
End Using ' end:using(fileStream) - Close and dispose fileStream.

' Add a Package Relationship to the Document Part
package.CreateRelationship(packagePartDocument.Uri, TargetMode.Internal, PackageRelationshipType)

Opmerkingen

Een relatie op pakketniveau definieert een koppeling tussen het pakket en een gekoppeld doelonderdeel of resource. Een relatie op pakketniveau kan een van twee vormen zijn.

In een pakketrelatie wordt het pakket beschouwd als de 'eigenaar' van de relatie. Wanneer het pakket wordt verwijderd, worden alle relaties die eigendom zijn van het pakket ook verwijderd. Het proces voor het maken of verwijderen van de relatie wijzigt het doelonderdeel of de doelresource op geen enkele manier.

Zie de OPC-specificatie (Open Packaging Conventions) die u kunt downloaden voor https://www.ecma-international.org/publications-and-standards/standards/ecma-376/meer informatie.

CreateRelationship(Uri, TargetMode, String)

Bron:
Package.cs
Bron:
Package.cs
Bron:
Package.cs
Bron:
Package.cs
Bron:
Package.cs
Bron:
Package.cs
Bron:
Package.cs
Bron:
Package.cs

Hiermee maakt u een relatie op pakketniveau met een onderdeel met een bepaalde URI, doelmodus en relatietype.

public:
 System::IO::Packaging::PackageRelationship ^ CreateRelationship(Uri ^ targetUri, System::IO::Packaging::TargetMode targetMode, System::String ^ relationshipType);
public System.IO.Packaging.PackageRelationship CreateRelationship(Uri targetUri, System.IO.Packaging.TargetMode targetMode, string relationshipType);
member this.CreateRelationship : Uri * System.IO.Packaging.TargetMode * string -> System.IO.Packaging.PackageRelationship
Public Function CreateRelationship (targetUri As Uri, targetMode As TargetMode, relationshipType As String) As PackageRelationship

Parameters

targetUri
Uri

De URI (Uniform Resource Identifier) van het doelonderdeel.

targetMode
TargetMode

Geeft aan of het doelonderdeel of Internal het pakket isExternal.

relationshipType
String

Een URI die de rol van de relatie op unieke wijze definieert.

Retouren

De relatie op pakketniveau met het opgegeven deel.

Uitzonderingen

targetUri of relationshipType is null.

Het targetUri onderdeel is een PackageRelationshipof targetMode is Internal en targetUri is een absolute URI.

De waarde voor targetMode is ongeldig.

Het pakket is niet geopend (Dispose(Boolean) of Close() is aangeroepen).

Het pakket heeft het kenmerk Alleen-lezen.

Voorbeelden

In het volgende voorbeeld ziet u hoe CreateRelationship u een PackageRelationship tussen een Package en een hoofddocumentonderdeel maakt.

// Add the Document part to the Package
PackagePart packagePartDocument =
    package.CreatePart(partUriDocument,
                   System.Net.Mime.MediaTypeNames.Text.Xml);

// Copy the data to the Document Part
using (FileStream fileStream = new FileStream(
       documentPath, FileMode.Open, FileAccess.Read))
{
    CopyStream(fileStream, packagePartDocument.GetStream());
}// end:using(fileStream) - Close and dispose fileStream.

// Add a Package Relationship to the Document Part
package.CreateRelationship(packagePartDocument.Uri,
                           TargetMode.Internal,
                           PackageRelationshipType);
' Add the Document part to the Package
Dim packagePartDocument As PackagePart = package.CreatePart(partUriDocument, System.Net.Mime.MediaTypeNames.Text.Xml)

' Copy the data to the Document Part
Using fileStream As New FileStream(documentPath, FileMode.Open, FileAccess.Read)
    CopyStream(fileStream, packagePartDocument.GetStream())
End Using ' end:using(fileStream) - Close and dispose fileStream.

' Add a Package Relationship to the Document Part
package.CreateRelationship(packagePartDocument.Uri, TargetMode.Internal, PackageRelationshipType)

Opmerkingen

Een relatie op pakketniveau definieert een koppeling tussen het pakket en een gekoppeld doelonderdeel of resource. Een relatie op pakketniveau kan een van twee vormen zijn.

  • Tussen een Package doelonderdeel in het pakket.
  • Tussen een Package doelresource buiten het pakket.

In een pakketrelatie wordt het pakket beschouwd als de 'eigenaar' van de relatie. Wanneer het pakket wordt verwijderd, worden alle relaties die eigendom zijn van het pakket ook verwijderd.

CreateRelationship wijzigt het doelonderdeel of de doelresource op geen enkele manier.

Het doel van een relatie kan geen andere relatie zijn.

Als targetMode wordt opgegeven als Internal, targetUri moet een relatieve URI zijn die wordt gevormd volgens de algemene syntaxisspecificatie van RFC 3986 Uniform Resource Identifier (URI). De interne relatieve URI kan een absoluut pad zijn dat begint met een slash (/) zoals '/page1.xaml' of '/images/picture4.jpg', of een relatief pad zoals '.'. /imagespicture1.jpg" die wordt omgezet op basis van de pakkethoofdmap ("/") als de basis-URI.

Als targetMode wordt opgegeven als External, targetUri kan een absolute of relatieve URI zijn gevormd volgens de algemene syntaxisspecificatie van RFC 3986 Uniform Resource Identifier (URI). http://www.microsoft.com/page2.xml is een voorbeeld van een absolute URI die verwijst naar een externe doelresource "page2.xml". "images/picture1.jpg" is een voorbeeld van een relatieve URI die ook verwijst naar een externe doelresource "1.jpg" maar die wordt omgezet op basis van de URI van het pakket zelf.

relationshipType moet een URI zijn die wordt gevormd volgens de algemene syntaxisspecificatie van RFC 3986 Uniform Resource Identifier (URI). In de volgende tabel ziet u de URI's op pakketniveau relationshipType die zijn gedefinieerd door de OPC-specificatie (Open Packaging Conventions).

Relatie op pakketniveau Relatietype-URI
Kerneigenschappen http://schemas.openxmlformats.org/package/2006/relationships/metadata/core-properties
Digitale handtekening http://schemas.openxmlformats.org/package/2006/relationships/digital-signature/signature
Certificaat voor digitale handtekening http://schemas.openxmlformats.org/package/2006/relationships/digital-signature/certificate
Oorsprong van digitale handtekening http://schemas.openxmlformats.org/package/2006/relationships/digital-signature/origin
Miniatuurafbeelding http://schemas.openxmlformats.org/package/2006/relationships/metadata/thumbnail

Zie sectie 1.3 van de OPC-specificatie (Open Packaging Conventions) die u kunt downloaden voor https://www.ecma-international.org/publications-and-standards/standards/ecma-376/meer informatie over verpakkings- en pakketrelaties.

Zie ook

Van toepassing op

CreateRelationship(Uri, TargetMode, String, String)

Bron:
Package.cs
Bron:
Package.cs
Bron:
Package.cs
Bron:
Package.cs
Bron:
Package.cs
Bron:
Package.cs
Bron:
Package.cs
Bron:
Package.cs

Hiermee maakt u een relatie op pakketniveau met een onderdeel met een bepaalde URI, doelmodus, relatietype en id (ID).

public:
 System::IO::Packaging::PackageRelationship ^ CreateRelationship(Uri ^ targetUri, System::IO::Packaging::TargetMode targetMode, System::String ^ relationshipType, System::String ^ id);
public System.IO.Packaging.PackageRelationship CreateRelationship(Uri targetUri, System.IO.Packaging.TargetMode targetMode, string relationshipType, string? id);
public System.IO.Packaging.PackageRelationship CreateRelationship(Uri targetUri, System.IO.Packaging.TargetMode targetMode, string relationshipType, string id);
member this.CreateRelationship : Uri * System.IO.Packaging.TargetMode * string * string -> System.IO.Packaging.PackageRelationship
Public Function CreateRelationship (targetUri As Uri, targetMode As TargetMode, relationshipType As String, id As String) As PackageRelationship

Parameters

targetUri
Uri

De URI (Uniform Resource Identifier) van het doelonderdeel.

targetMode
TargetMode

Geeft aan of het doelonderdeel of Internal het pakket isExternal.

relationshipType
String

Een URI die de rol van de relatie op unieke wijze definieert.

id
String

Een unieke XML-id.

Retouren

De relatie op pakketniveau met het opgegeven deel.

Uitzonderingen

targetUri of relationshipType is null.

Het targetUri onderdeel is een PackageRelationshipof targetMode is Internal en targetUri is een absolute URI.

De waarde voor targetMode is ongeldig.

Het pakket is niet geopend (Dispose(Boolean) of Close() is aangeroepen).

Het pakket heeft het kenmerk Alleen-lezen.

id is geen geldige XML-id; of een deel met het opgegeven id onderdeel vindt al plaats in het pakket.

Voorbeelden

In het volgende voorbeeld ziet u hoe CreateRelationship u een PackageRelationship tussen een Package en een hoofddocumentonderdeel maakt.

// Add the Document part to the Package
PackagePart packagePartDocument =
    package.CreatePart(partUriDocument,
                   System.Net.Mime.MediaTypeNames.Text.Xml);

// Copy the data to the Document Part
using (FileStream fileStream = new FileStream(
       documentPath, FileMode.Open, FileAccess.Read))
{
    CopyStream(fileStream, packagePartDocument.GetStream());
}// end:using(fileStream) - Close and dispose fileStream.

// Add a Package Relationship to the Document Part
package.CreateRelationship(packagePartDocument.Uri,
                           TargetMode.Internal,
                           PackageRelationshipType);
' Add the Document part to the Package
Dim packagePartDocument As PackagePart = package.CreatePart(partUriDocument, System.Net.Mime.MediaTypeNames.Text.Xml)

' Copy the data to the Document Part
Using fileStream As New FileStream(documentPath, FileMode.Open, FileAccess.Read)
    CopyStream(fileStream, packagePartDocument.GetStream())
End Using ' end:using(fileStream) - Close and dispose fileStream.

' Add a Package Relationship to the Document Part
package.CreateRelationship(packagePartDocument.Uri, TargetMode.Internal, PackageRelationshipType)

Opmerkingen

Een relatie op pakketniveau definieert een koppeling tussen het pakket en een gekoppeld doelonderdeel of resource. Een relatie op pakketniveau kan een van twee vormen zijn.

  • Tussen een Package doelonderdeel in het pakket.
  • Tussen een Package doelresource buiten het pakket.

In een pakketrelatie wordt het pakket beschouwd als de 'eigenaar' van de relatie. Wanneer het pakket wordt verwijderd, worden alle relaties die eigendom zijn van het pakket ook verwijderd.

CreateRelationship wijzigt het doelonderdeel of de doelresource op geen enkele manier.

Het doel van een relatie kan geen andere relatie zijn.

id moet een geldige XML-id zijn. Het id type is xsd:ID en moet de naamconventies volgen die zijn voorgeschreven in het XML-schema deel 2: gegevenstypenspecificatie (zie https://www.w3.org/TR/xmlschema-2/#ID).

Als id wordt opgegeven als null een unieke id, wordt automatisch gegenereerd. Een id opgegeven door een lege tekenreeks is ongeldig.

Als targetMode wordt opgegeven als Internal, targetUri moet een relatieve URI zijn die wordt gevormd volgens de algemene syntaxisspecificatie van RFC 3986 Uniform Resource Identifier (URI). De interne relatieve URI kan een absoluut pad zijn dat begint met een slash (/) zoals '/page1.xaml' of '/images/picture4.jpg', of een relatief pad zoals '.'. /imagespicture1.jpg" die wordt omgezet op basis van de pakkethoofdmap ("/") als de basis-URI.

Als targetMode wordt opgegeven als External, targetUri kan een absolute of relatieve URI zijn gevormd volgens de algemene syntaxisspecificatie van RFC 3986 Uniform Resource Identifier (URI). http://www.microsoft.com/page2.xml is een voorbeeld van een absolute URI die verwijst naar een externe doelresource "page2.xml". "images/picture1.jpg" is een voorbeeld van een relatieve URI die ook verwijst naar een externe doelresource "1.jpg" maar die wordt omgezet op basis van de URI van het pakket zelf.

relationshipType moet een URI zijn die wordt gevormd volgens de algemene syntaxisspecificatie van RFC 3986 Uniform Resource Identifier (URI). In de volgende tabel ziet u de URI's op pakketniveau relationshipType die zijn gedefinieerd door de OPC-specificatie (Open Packaging Conventions).

Relatie op pakketniveau Relatietype-URI
Kerneigenschappen http://schemas.openxmlformats.org/package/2006/relationships/metadata/core-properties
Digitale handtekening http://schemas.openxmlformats.org/package/2006/relationships/digital-signature/signature
Certificaat voor digitale handtekening http://schemas.openxmlformats.org/package/2006/relationships/digital-signature/certificate
Oorsprong van digitale handtekening http://schemas.openxmlformats.org/package/2006/relationships/digital-signature/origin
Miniatuurafbeelding http://schemas.openxmlformats.org/package/2006/relationships/metadata/thumbnail

Zie sectie 1.3 van de OPC-specificatie (Open Packaging Conventions) die u kunt downloaden https://www.ecma-international.org/publications-and-standards/standards/ecma-376/voor meer informatie over verpakkings- en pakketrelaties.

Zie ook

Van toepassing op