Package.CreateRelationship Metodo
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Crea una relazione a livello di pacchetto con una parte specificata.
Overload
CreateRelationship(Uri, TargetMode, String) |
Crea una relazione a livello di pacchetto con una parte con un URI specificato, un modalità di destinazione e un tipo di relazione. |
CreateRelationship(Uri, TargetMode, String, String) |
Crea una relazione a livello di pacchetto a una parte con un determinato URI, modalità di destinazione, tipo di relazione e identificatore (ID). |
Esempio
Nell'esempio seguente viene illustrata la creazione di un oggetto tra una PackageRelationshipPackage e una parte radice del documento.
// 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)
Commenti
Una relazione a livello di pacchetto definisce un'associazione tra il pacchetto e una parte o una risorsa di destinazione associata. Una relazione a livello di pacchetto può essere una di due forme.
- Tra un Package oggetto e una destinazione PackagePart all'interno del pacchetto.
- Tra un Package oggetto e una risorsa di destinazione all'esterno del pacchetto.
In una relazione di pacchetto il pacchetto viene considerato il "proprietario" della relazione. Quando il pacchetto viene eliminato, vengono eliminate anche tutte le relazioni di proprietà del pacchetto. Il processo di creazione o eliminazione della relazione non modifica fisicamente la parte o la risorsa di destinazione in alcun modo.
Per altre informazioni, vedere la specifica OPC (Open Packaging Conventions) disponibile per il download all'indirizzo https://www.ecma-international.org/publications-and-standards/standards/ecma-376/.
CreateRelationship(Uri, TargetMode, String)
- Origine:
- Package.cs
- Origine:
- Package.cs
- Origine:
- Package.cs
- Origine:
- Package.cs
Crea una relazione a livello di pacchetto con una parte con un URI specificato, un modalità di destinazione e un tipo di relazione.
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
Parametri
- targetUri
- Uri
URI (Uniform Resource Identifier) della parte di destinazione.
- targetMode
- TargetMode
Indica se la parte di destinazione è Internal o External al pacchetto.
- relationshipType
- String
Un URI che definisce in modo univoco il ruolo della relazione.
Restituisce
La relazione a livello di pacchetto con la parte specificata.
Eccezioni
targetUri
o relationshipType
è null
.
La parte targetUri
è PackageRelationship, o targetMode
è Internal e targetUri
è un URI assoluto.
Il valore di targetMode
non è valido.
Il pacchetto non è aperto (Dispose(Boolean) o Close() è stato chiamato).
Il pacchetto è di sola lettura.
Esempio
Nell'esempio seguente viene illustrato come usare CreateRelationship per creare un PackageRelationship oggetto tra una Package e una parte del documento radice.
// 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)
Commenti
Una relazione a livello di pacchetto definisce un'associazione tra il pacchetto e una parte o una risorsa di destinazione associata. Una relazione a livello di pacchetto può essere una di due forme.
- Tra un Package oggetto e una parte di destinazione nel pacchetto.
- Tra un Package oggetto e una risorsa di destinazione all'esterno del pacchetto.
In una relazione di pacchetto il pacchetto viene considerato il "proprietario" della relazione. Quando il pacchetto viene eliminato, vengono eliminate anche tutte le relazioni di proprietà del pacchetto.
CreateRelationship non modifica fisicamente la parte o la risorsa di destinazione in alcun modo.
La destinazione di una relazione non può essere un'altra relazione.
Se targetMode
viene specificato come Internal, targetUri
deve essere un URI relativo formato in base alla specifica Sintassi generica RFC 3986 Uniform Resource Identifier (URI). L'URI relativo interno può essere un percorso assoluto che inizia con una barra ("/") come "/page1.xaml" o "/images/picture4.jpg" o un percorso relativo, ad esempio ".. /imagespicture1.jpg" che viene risolto nella radice del pacchetto ("/") come URI di base.
Se targetMode
viene specificato come External, targetUri
può essere un URI assoluto o relativo formato in base alla specifica della sintassi generica RFC 3986 Uniform Resource Identifier (URI).
http://www.microsoft.com/page2.xml
è un esempio di URI assoluto che fa riferimento a una risorsa di destinazione esterna "page2.xml". "images/picture1.jpg" è un esempio di URI relativo che fa riferimento anche a una risorsa di destinazione esterna "1.jpg", ma che viene risolta con l'URI del pacchetto stesso.
relationshipType
deve essere un URI formato in base alla specifica della sintassi generica RFC 3986 Uniform Resource Identifier (URI). La tabella seguente illustra gli URI a livello relationshipType
di pacchetto definiti dalla specifica OPC (Open Packaging Conventions).
Relazione a livello di pacchetto | URI del tipo di relazione |
---|---|
Proprietà di base | http://schemas.openxmlformats.org/package/2006/relationships/metadata/core-properties |
Firma digitale | http://schemas.openxmlformats.org/package/2006/relationships/digital-signature/signature |
Certificato di firma digitale | http://schemas.openxmlformats.org/package/2006/relationships/digital-signature/certificate |
Origine firma digitale | http://schemas.openxmlformats.org/package/2006/relationships/digital-signature/origin |
Anteprima | http://schemas.openxmlformats.org/package/2006/relationships/metadata/thumbnail |
Per altre informazioni sulla creazione di pacchetti e sulle relazioni tra pacchetti, vedere la sezione 1.3 della specifica OPC (Open Packaging Conventions) disponibile per il download all'indirizzo https://www.ecma-international.org/publications-and-standards/standards/ecma-376/.
Vedi anche
- DeleteRelationship(String)
- GetRelationship(String)
- GetRelationships()
- GetRelationshipsByType(String)
- RelationshipExists(String)
Si applica a
CreateRelationship(Uri, TargetMode, String, String)
- Origine:
- Package.cs
- Origine:
- Package.cs
- Origine:
- Package.cs
- Origine:
- Package.cs
Crea una relazione a livello di pacchetto a una parte con un determinato URI, modalità di destinazione, tipo di relazione e identificatore (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
Parametri
- targetUri
- Uri
URI (Uniform Resource Identifier) della parte di destinazione.
- targetMode
- TargetMode
Indica se la parte di destinazione è Internal o External al pacchetto.
- relationshipType
- String
Un URI che definisce in modo univoco il ruolo della relazione.
- id
- String
Identificatore XML univoco.
Restituisce
La relazione a livello di pacchetto con la parte specificata.
Eccezioni
targetUri
o relationshipType
è null
.
La parte targetUri
è PackageRelationship, o targetMode
è Internal e targetUri
è un URI assoluto.
Il valore di targetMode
non è valido.
Il pacchetto non è aperto (Dispose(Boolean) o Close() è stato chiamato).
Il pacchetto è di sola lettura.
id
non è un identificatore XML valido; o è gia presente nel pacchetto una parte con id
specificato.
Esempio
Nell'esempio seguente viene illustrato come usare CreateRelationship per creare un PackageRelationship oggetto tra una Package e una parte del documento radice.
// 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)
Commenti
Una relazione a livello di pacchetto definisce un'associazione tra il pacchetto e una parte o una risorsa di destinazione associata. Una relazione a livello di pacchetto può essere una di due forme.
- Tra un Package oggetto e una parte di destinazione nel pacchetto.
- Tra un Package oggetto e una risorsa di destinazione all'esterno del pacchetto.
In una relazione di pacchetto il pacchetto viene considerato il "proprietario" della relazione. Quando il pacchetto viene eliminato, vengono eliminate anche tutte le relazioni di proprietà del pacchetto.
CreateRelationship non modifica fisicamente la parte o la risorsa di destinazione in alcun modo.
La destinazione di una relazione non può essere un'altra relazione.
id
deve essere un identificatore XML valido. Il id
tipo è xsd:ID e deve seguire le convenzioni di denominazione previste nella specifica XML Schema Part 2: Datatypes (vedere https://www.w3.org/TR/xmlschema-2/#ID).
Se id
viene specificato come null
ID univoco, verrà generato automaticamente. Un id
oggetto specificato da una stringa vuota non è valido.
Se targetMode
viene specificato come Internal, targetUri
deve essere un URI relativo formato in base alla specifica Sintassi generica RFC 3986 Uniform Resource Identifier (URI). L'URI relativo interno può essere un percorso assoluto che inizia con una barra ("/") come "/page1.xaml" o "/images/picture4.jpg" o un percorso relativo, ad esempio ".. /imagespicture1.jpg" che viene risolto nella radice del pacchetto ("/") come URI di base.
Se targetMode
viene specificato come External, targetUri
può essere un URI assoluto o relativo formato in base alla specifica della sintassi generica RFC 3986 Uniform Resource Identifier (URI).
http://www.microsoft.com/page2.xml
è un esempio di URI assoluto che fa riferimento a una risorsa di destinazione esterna "page2.xml". "images/picture1.jpg" è un esempio di URI relativo che fa riferimento anche a una risorsa di destinazione esterna "1.jpg", ma che viene risolta con l'URI del pacchetto stesso.
relationshipType
deve essere un URI formato in base alla specifica della sintassi generica RFC 3986 Uniform Resource Identifier (URI). La tabella seguente illustra gli URI a livello relationshipType
di pacchetto definiti dalla specifica OPC (Open Packaging Conventions).
Relazione a livello di pacchetto | URI del tipo di relazione |
---|---|
Proprietà di base | http://schemas.openxmlformats.org/package/2006/relationships/metadata/core-properties |
Firma digitale | http://schemas.openxmlformats.org/package/2006/relationships/digital-signature/signature |
Certificato di firma digitale | http://schemas.openxmlformats.org/package/2006/relationships/digital-signature/certificate |
Origine firma digitale | http://schemas.openxmlformats.org/package/2006/relationships/digital-signature/origin |
Anteprima | http://schemas.openxmlformats.org/package/2006/relationships/metadata/thumbnail |
Per altre informazioni sulla creazione di pacchetti e sulle relazioni tra pacchetti, vedere la sezione 1.3 della specifica OPC (Open Packaging Conventions) disponibile per il download all'indirizzo https://www.ecma-international.org/publications-and-standards/standards/ecma-376/.
Vedi anche
- CreateRelationship(Uri, TargetMode, String)
- DeleteRelationship(String)
- GetRelationship(String)
- GetRelationships()
- GetRelationshipsByType(String)
- RelationshipExists(String)