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 null
der 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 null
der zurückgegebene Pack-URI auf das Paket.
fragment
kann keine leere Zeichenfolge sein, kann aber als null
angegeben werden. Wenn sie nicht als null
angegeben 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.