PackUriHelper.Create Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Erstellt einen neuen Paket-URI.
Überlädt
| Create(Uri) |
Erstellt einen neuen Paket-URI, der auf ein Paket verweist. |
| Create(Uri, Uri) |
Erstellt anhand eines Package-URIs und des URIs eines Paketteils einen Paket-URI. |
| Create(Uri, Uri, String) |
Erstellt anhand eines Package-URIs, des URIs eines Paketteils und eines anzuhängenden „#“-Fragments einen Paket-URI. |
Hinweise
In der folgenden Tabelle werden Beispielfälle für die Create -Methode veranschaulicht.
packageUri |
partUri |
fragment |
Zurückgegebener Pack-URI |
|---|---|---|---|
http://www.proseware.com/mypackage.pkg |
/page1.xaml | #intro | pack://http:,,www.proseware.com,mypackage.pkg/page1.xaml#intro |
http://www.proseware.com/mypackage.pkg |
/page2.xaml | null | pack://http:,,www.proseware.com,mypackage.pkg/page2.xaml |
http://www.proseware.com/mypackage.pkg |
/a/page4.xaml | null | pack://http:,,www.proseware.com,mypackage.pkg/a/page4.xaml |
http://www.proseware.com/mypackage.pkg |
/%41/%61.xml | null | pack://http:,,www.proseware.com,mypackage.pkg/A/a.xml |
http://www.proseware.com/mypackage.pkg |
/%25XY.xml | null | pack://http:,,www.proseware.com,mypackage.pkg/%25XY.xml |
http://www.proseware.com/mypackage.pkg |
/a/page5.xaml | #summary | pack://http:,,www.proseware.com,mypackage.pkg/a/page5.xaml#summary |
http://www.proseware.com/packages.aspx?pkg04 |
/page1.xaml | #intro | pack://http:,,www.proseware.com,packages.aspx%3fpkg04/page1.xaml#intro |
http://www.proseware.com/mypackage.pkg |
null | null | pack://http:,,www.proseware.com,mypackage.pkg |
ftp://ftp.proseware.com/packages/mypackage1.abc |
/a/mydoc.xaml | null | pack://ftp:,,ftp.proseware.com,packages,mypackage1.abc/a/mydoc.xaml |
file:///d:/packages/mypackage2.pkg |
/a/bar.xaml | #xref | pack://file:,,,d:,packages,mypackage2.pkg/a/bar.xaml#xref |
Das Erstellen eines Pack-URI ist ein mehrstufiger Prozess. Ein Schritt beim Erstellen eines Paket-URI besteht beispielsweise darin, den Schrägstrich (/) des packageUri durch Kommas (,) zu ersetzen.
Weitere Informationen zur Zeichenfolgenkonvertierung und zur Erstellung von Pack-URIs finden Sie unter Anhang A.4 "Beispiele für die Zeichenfolgenkonvertierung" und Anhang B.3 "Erstellen eines Pack-URI" in der Spezifikation für Open Packaging Conventions, die unter Spezifikationen und Lizenzdownloads zum Download verfügbar ist.
Create(Uri)
Erstellt einen neuen Paket-URI, der auf ein Paket verweist.
public:
static Uri ^ Create(Uri ^ packageUri);
public static Uri Create (Uri packageUri);
static member Create : Uri -> Uri
Public Shared Function Create (packageUri As Uri) As Uri
Parameter
Gibt zurück
Der Paket-URI für das Package, auf das durch den angegebenen packageUri verwiesen wird.
Ausnahmen
packageUri ist null.
packageUri ist kein absoluter URI.
Beispiele
Das folgende Beispiel zeigt, wie Sie mithilfe der Create -Methode einen Pack-URI definieren, der auf ein Paket verweist.
// ------------------------ GetFixedDocument --------------------------
/// <summary>
/// Returns the fixed document at a given URI within
/// the currently open XPS package.</summary>
/// <param name="fixedDocUri">
/// The URI of the fixed document to return.</param>
/// <returns>
/// The fixed document at a given URI
/// within the current XPS package.</returns>
private FixedDocument GetFixedDocument(Uri fixedDocUri)
{
FixedDocument fixedDocument = null;
// Create the URI for the fixed document within the package. The URI
// is used to set the Parser context so fonts & other items can load.
Uri tempUri = new Uri(_xpsDocumentPath, UriKind.RelativeOrAbsolute);
ParserContext parserContext = new ParserContext();
parserContext.BaseUri = PackUriHelper.Create(tempUri);
// Retrieve the fixed document.
PackagePart fixedDocPart = _xpsPackage.GetPart(fixedDocUri);
if (fixedDocPart != null)
{
object fixedObject =
XamlReader.Load(fixedDocPart.GetStream(), parserContext);
if (fixedObject != null)
fixedDocument = fixedObject as FixedDocument;
}
return fixedDocument;
}// end:GetFixedDocument()
' ------------------------ GetFixedDocument --------------------------
''' <summary>
''' Returns the fixed document at a given URI within
''' the currently open XPS package.</summary>
''' <param name="fixedDocUri">
''' The URI of the fixed document to return.</param>
''' <returns>
''' The fixed document at a given URI
''' within the current XPS package.</returns>
Private Function GetFixedDocument(ByVal fixedDocUri As Uri) As FixedDocument
Dim fixedDocument As FixedDocument = Nothing
' Create the URI for the fixed document within the package. The URI
' is used to set the Parser context so fonts & other items can load.
Dim tempUri As New Uri(_xpsDocumentPath, UriKind.RelativeOrAbsolute)
Dim parserContext As New ParserContext()
parserContext.BaseUri = PackUriHelper.Create(tempUri)
' Retrieve the fixed document.
Dim fixedDocPart As PackagePart = _xpsPackage.GetPart(fixedDocUri)
If fixedDocPart IsNot Nothing Then
Dim fixedObject As Object = XamlReader.Load(fixedDocPart.GetStream(), parserContext)
If fixedObject IsNot Nothing Then
fixedDocument = TryCast(fixedObject, FixedDocument)
End If
End If
Return fixedDocument
End Function ' end:GetFixedDocument()
Hinweise
packageUri darf nicht als null oder leer angegeben werden.
In der folgenden Tabelle werden Beispielfälle für Createveranschaulicht.
packageUri |
Zurückgegebener Pack-URI |
|---|---|
http://www.proseware.com/mypackage.pkg |
pack://http:,,www.proseware.com,mypackage.pkg |
| ftp://ftp.proseware.com/packages/mypackage1.abc | pack://ftp:,,ftp.proseware.com,packages,mypackage1.abc |
| file:///d:/packages/mypackage2.pkg | pack://file:,,,d:,packages,mypackage2.pkg |
Das Erstellen eines Pack-URI ist ein mehrstufiger Prozess. Ein Schritt beim Erstellen eines Paket-URI besteht beispielsweise darin, den Schrägstrich (/) des packageUri durch Kommas (,) zu ersetzen.
Weitere Informationen zur Zeichenfolgenkonvertierung und zur Erstellung von Pack-URIs finden Sie unter Anhang A.4 "Beispiele für die Zeichenfolgenkonvertierung" und Anhang B.3 "Erstellen eines Pack-URI" in der Spezifikation für Open Packaging Conventions, die unter Spezifikationen und Lizenzdownloads zum Download verfügbar ist.
Weitere Informationen
Gilt für:
Create(Uri, Uri)
Erstellt anhand eines Package-URIs und des URIs eines Paketteils einen Paket-URI.
public:
static Uri ^ Create(Uri ^ packageUri, Uri ^ partUri);
public static Uri Create (Uri packageUri, Uri partUri);
public static Uri Create (Uri packageUri, Uri? partUri);
static member Create : Uri * Uri -> Uri
Public Shared Function Create (packageUri As Uri, partUri As Uri) As Uri
Parameter
- partUri
- Uri
Der URI des PackagePart im Paket.
Gibt zurück
Der Paket-URI des angegebenen PackagePart.
Ausnahmen
packageUri ist null.
packageUri ist kein absoluter URI.
- oder -
partUri ist keine gültige Syntax für einen Teil-URI.
Beispiele
Das folgende Beispiel zeigt, wie Sie mithilfe der Create(Uri) -Methode einen Pack-URI definieren, der auf ein Paket verweist.
// ------------------------ GetFixedDocument --------------------------
/// <summary>
/// Returns the fixed document at a given URI within
/// the currently open XPS package.</summary>
/// <param name="fixedDocUri">
/// The URI of the fixed document to return.</param>
/// <returns>
/// The fixed document at a given URI
/// within the current XPS package.</returns>
private FixedDocument GetFixedDocument(Uri fixedDocUri)
{
FixedDocument fixedDocument = null;
// Create the URI for the fixed document within the package. The URI
// is used to set the Parser context so fonts & other items can load.
Uri tempUri = new Uri(_xpsDocumentPath, UriKind.RelativeOrAbsolute);
ParserContext parserContext = new ParserContext();
parserContext.BaseUri = PackUriHelper.Create(tempUri);
// Retrieve the fixed document.
PackagePart fixedDocPart = _xpsPackage.GetPart(fixedDocUri);
if (fixedDocPart != null)
{
object fixedObject =
XamlReader.Load(fixedDocPart.GetStream(), parserContext);
if (fixedObject != null)
fixedDocument = fixedObject as FixedDocument;
}
return fixedDocument;
}// end:GetFixedDocument()
' ------------------------ GetFixedDocument --------------------------
''' <summary>
''' Returns the fixed document at a given URI within
''' the currently open XPS package.</summary>
''' <param name="fixedDocUri">
''' The URI of the fixed document to return.</param>
''' <returns>
''' The fixed document at a given URI
''' within the current XPS package.</returns>
Private Function GetFixedDocument(ByVal fixedDocUri As Uri) As FixedDocument
Dim fixedDocument As FixedDocument = Nothing
' Create the URI for the fixed document within the package. The URI
' is used to set the Parser context so fonts & other items can load.
Dim tempUri As New Uri(_xpsDocumentPath, UriKind.RelativeOrAbsolute)
Dim parserContext As New ParserContext()
parserContext.BaseUri = PackUriHelper.Create(tempUri)
' Retrieve the fixed document.
Dim fixedDocPart As PackagePart = _xpsPackage.GetPart(fixedDocUri)
If fixedDocPart IsNot Nothing Then
Dim fixedObject As Object = XamlReader.Load(fixedDocPart.GetStream(), parserContext)
If fixedObject IsNot Nothing Then
fixedDocument = TryCast(fixedObject, FixedDocument)
End If
End If
Return fixedDocument
End Function ' end:GetFixedDocument()
Hinweise
packageUri darf nicht als NULL oder leer angegeben werden.
Wenn partUri ist, zeigt nullder zurückgegebene Pack-URI auf das Paket.
In der folgenden Tabelle werden Beispielfälle für die Create -Methode veranschaulicht.
packageUri |
partUri |
Zurückgegebener Pack-URI |
|---|---|---|
http://www.proseware.com/mypackage.pkg |
/page2.xaml | pack://http:,,www.proseware.com,mypackage.pkg/page2.xaml |
http://www.proseware.com/mypackage.pkg |
/a/page4.xaml | pack://http:,,www.proseware.com,mypackage.pkg/a/page4.xaml |
http://www.proseware.com/mypackage.pkg |
/%41/%61.xml | pack://http:,,www.proseware.com,mypackage.pkg/A/a.xml |
http://www.proseware.com/mypackage.pkg |
/%25XY.xml | pack://http:,,www.proseware.com,mypackage.pkg/%25XY.xml |
http://www.proseware.com/mypackage.pkg |
null | pack://http:,,www.proseware.com,mypackage.pkg |
| ftp://ftp.proseware.com/packages/mypackage1.abc | /a/mydoc.xaml | pack://ftp:,,ftp.proseware.com,packages,mypackage1.abc/a/mydoc.xaml |
| file:///d:/packages/mypackage2.pkg | /a/bar.xaml | pack://file:,,,d:,packages,mypackage2.pkg/a/bar.xaml |
Das Erstellen eines Pack-URI ist ein mehrstufiger Prozess. Ein Schritt beim Erstellen eines Paket-URI besteht beispielsweise darin, den Schrägstrich (/) des packageUri durch Kommas (,) zu ersetzen.
Weitere Informationen zur Zeichenfolgenkonvertierung und zur Erstellung von Pack-URIs finden Sie unter Anhang A.4 "Beispiele für die Zeichenfolgenkonvertierung" und Anhang B.3 "Erstellen eines Pack-URI" in der Spezifikation für Open Packaging Conventions, die unter Spezifikationen und Lizenzdownloads zum Download verfügbar ist.
Weitere Informationen
Gilt für:
Create(Uri, Uri, String)
Erstellt anhand eines Package-URIs, des URIs eines Paketteils und eines anzuhängenden „#“-Fragments einen Paket-URI.
public:
static Uri ^ Create(Uri ^ packageUri, Uri ^ partUri, System::String ^ fragment);
public static Uri Create (Uri packageUri, Uri partUri, string fragment);
public static Uri Create (Uri packageUri, Uri? partUri, string? fragment);
static member Create : Uri * Uri * string -> Uri
Public Shared Function Create (packageUri As Uri, partUri As Uri, fragment As String) As Uri
Parameter
- partUri
- Uri
Der URI des PackagePart im Paket.
- fragment
- String
Ein "#"-Verweis, der ein Element innerhalb des Paketteils identifiziert.
Gibt zurück
Der Paket-URI, der das angegebene Paket, Paketteil und Fragment angibt.
Ausnahmen
packageUri ist null.
packageUri ist kein absoluter URI.
- oder -
partUri ist keine gültige Syntax für einen Teil-URI.
- oder -
fragment ist leer oder beginnt mit "#".
Beispiele
Das folgende Beispiel zeigt, wie Sie mithilfe der Create(Uri) -Methode einen Pack-URI definieren, der auf ein Paket verweist.
// ------------------------ GetFixedDocument --------------------------
/// <summary>
/// Returns the fixed document at a given URI within
/// the currently open XPS package.</summary>
/// <param name="fixedDocUri">
/// The URI of the fixed document to return.</param>
/// <returns>
/// The fixed document at a given URI
/// within the current XPS package.</returns>
private FixedDocument GetFixedDocument(Uri fixedDocUri)
{
FixedDocument fixedDocument = null;
// Create the URI for the fixed document within the package. The URI
// is used to set the Parser context so fonts & other items can load.
Uri tempUri = new Uri(_xpsDocumentPath, UriKind.RelativeOrAbsolute);
ParserContext parserContext = new ParserContext();
parserContext.BaseUri = PackUriHelper.Create(tempUri);
// Retrieve the fixed document.
PackagePart fixedDocPart = _xpsPackage.GetPart(fixedDocUri);
if (fixedDocPart != null)
{
object fixedObject =
XamlReader.Load(fixedDocPart.GetStream(), parserContext);
if (fixedObject != null)
fixedDocument = fixedObject as FixedDocument;
}
return fixedDocument;
}// end:GetFixedDocument()
' ------------------------ GetFixedDocument --------------------------
''' <summary>
''' Returns the fixed document at a given URI within
''' the currently open XPS package.</summary>
''' <param name="fixedDocUri">
''' The URI of the fixed document to return.</param>
''' <returns>
''' The fixed document at a given URI
''' within the current XPS package.</returns>
Private Function GetFixedDocument(ByVal fixedDocUri As Uri) As FixedDocument
Dim fixedDocument As FixedDocument = Nothing
' Create the URI for the fixed document within the package. The URI
' is used to set the Parser context so fonts & other items can load.
Dim tempUri As New Uri(_xpsDocumentPath, UriKind.RelativeOrAbsolute)
Dim parserContext As New ParserContext()
parserContext.BaseUri = PackUriHelper.Create(tempUri)
' Retrieve the fixed document.
Dim fixedDocPart As PackagePart = _xpsPackage.GetPart(fixedDocUri)
If fixedDocPart IsNot Nothing Then
Dim fixedObject As Object = XamlReader.Load(fixedDocPart.GetStream(), parserContext)
If fixedObject IsNot Nothing Then
fixedDocument = TryCast(fixedObject, FixedDocument)
End If
End If
Return fixedDocument
End Function ' end:GetFixedDocument()
Hinweise
packageUri darf nicht als null oder leer angegeben werden.
Wenn partUri ist, zeigt nullder zurückgegebene Pack-URI auf das Paket.
fragment kann keine leere Zeichenfolge sein, kann aber als nullangegeben werden. Wenn sie nicht als nullangegeben ist, muss die fragment Zeichenfolge mit einem "#"-Zeichen beginnen. Weitere Informationen zur Syntax von fragment Verweisen finden Sie in Abschnitt 3.5 "Fragment" von RFC 3986.
In der folgenden Tabelle werden Beispielfälle für die Create -Methode veranschaulicht.
packageUri |
partUri |
fragment |
Zurückgegebener Pack-URI |
|---|---|---|---|
http://www.proseware.com/mypackage.pkg |
/page1.xaml | #intro | pack://http:,,www.proseware.com,mypackage.pkg/page1.xaml#intro |
http://www.proseware.com/mypackage.pkg |
/page2.xaml | null | pack://http:,,www.proseware.com,mypackage.pkg/page2.xaml |
http://www.proseware.com/mypackage.pkg |
/a/page4.xaml | null | pack://http:,,www.proseware.com,mypackage.pkg/a/page4.xaml |
http://www.proseware.com/mypackage.pkg |
/%41/%61.xml | null | pack://http:,,www.proseware.com,mypackage.pkg/A/a.xml |
http://www.proseware.com/mypackage.pkg |
/%25XY.xml | null | pack://http:,,www.proseware.com,mypackage.pkg/%25XY.xml |
http://www.proseware.com/mypackage.pkg |
/a/page5.xaml | #summary | pack://http:,,www.proseware.com,mypackage.pkg/a/page5.xaml#summary |
http://www.proseware.com/packages.aspx?pkg04 |
/page1.xaml | #intro | pack://http:,,www.proseware.com,packages.aspx%3fpkg04/page1.xaml#intro |
http://www.proseware.com/mypackage.pkg |
null | null | pack://http:,,www.proseware.com,mypackage.pkg |
ftp://ftp.proseware.com/packages/mypackage1.abc |
/a/mydoc.xaml | null | pack://ftp:,,ftp.proseware.com,packages,mypackage1.abc/a/mydoc.xaml |
file:///d:/packages/mypackage2.pkg |
/a/bar.xaml | #xref | pack://file:,,,d:,packages,mypackage2.pkg/a/bar.xaml#xref |
Das Erstellen eines Pack-URI ist ein mehrstufiger Prozess. Ein Schritt beim Erstellen eines Paket-URI besteht beispielsweise darin, den Schrägstrich (/) des packageUri durch Kommas (,) zu ersetzen.
Weitere Informationen zur Zeichenfolgenkonvertierung und zur Erstellung von Pack-URIs finden Sie unter Anhang A.4 "Beispiele für die Zeichenfolgenkonvertierung" und Anhang B.3 "Erstellen eines Pack-URI" in der Spezifikation für Open Packaging Conventions, die unter Spezifikationen und Lizenzdownloads zum Download verfügbar ist.