ServerDocument-Klasse
Bietet Zugriff auf die zwischengespeicherten Daten und Anpassungsinformationen in einem Dokument oder in einer Arbeitsmappe, das bzw. die Teil einer Anpassung auf Dokumentebene ist, die mit den Office-Entwicklungstools in Visual Studio erstellt wurde.
Vererbungshierarchie
System.Object
Microsoft.VisualStudio.Tools.Applications.ServerDocument
Namespace: Microsoft.VisualStudio.Tools.Applications
Assembly: Microsoft.VisualStudio.Tools.Applications.ServerDocument (in Microsoft.VisualStudio.Tools.Applications.ServerDocument.dll)
Syntax
'Declaration
<PermissionSetAttribute(SecurityAction.Demand, Name := "FullTrust")> _
Public NotInheritable Class ServerDocument _
Implements IDisposable
[PermissionSetAttribute(SecurityAction.Demand, Name = "FullTrust")]
public sealed class ServerDocument : IDisposable
Der ServerDocument-Typ macht die folgenden Member verfügbar.
Konstruktoren
Name | Beschreibung | |
---|---|---|
ServerDocument(String) | Initialisiert eine neue Instanz der ServerDocument-Klasse und verwendet dabei den vollständigen Pfad zu dem Dokument, das geladen werden soll. | |
ServerDocument(array<Byte[], String) | Initialisiert eine neue Instanz der ServerDocument-Klasse und verwendet dabei ein Bytearray, welches das zu ladende Dokument darstellt, sowie die Dateinamenerweiterung des Dokuments. | |
ServerDocument(Stream, String) | Initialisiert eine neue Instanz der ServerDocument-Klasse und verwendet dabei einen Stream, der das zu ladende Dokument darstellt, sowie die Dateinamenerweiterung des Dokuments. | |
ServerDocument(String, FileAccess) | Initialisiert eine neue Instanz der ServerDocument-Klasse und verwendet dabei den vollständigen Pfad zu dem Dokument, das geladen werden soll, sowie einen Wert, der den Dateizugriff für das Dokument angibt. |
Zum Seitenanfang
Eigenschaften
Name | Beschreibung | |
---|---|---|
CachedData | Ruft ein CachedData-Objekt ab, das die im Dokument enthaltenen zwischengespeicherten Daten darstellt. | |
DeploymentManifestUrl | Ruft die URL des Bereitstellungsmanifests für die Anpassung, die dem Dokument zugeordnet ist, ab oder legt diese fest. | |
Document | Ruft das Bytearray des Dokuments ab, das in das ServerDocument geladen wird. | |
SolutionId | Ruft eine GUID ab, die Visual Studio Tools for Office-Laufzeit zum Identifizieren der Projektmappe verwendet. |
Zum Seitenanfang
Methoden
Name | Beschreibung | |
---|---|---|
AddCustomization(String, Uri) | Fügt mithilfe des angegebenen Assemblynamens und Bereitstellungsmanifests eine Anpassung an das angegebene Dokument an. | |
AddCustomization(String, String, Guid, Uri) | Fügt mithilfe von Assemblynamen, Projektmappen-ID und Bereitsstellungsmanifest eine Anpassung an das angegebene Dokument an. | |
AddCustomization(String, String, Guid, Uri, Boolean, array<String[]%) | Infrastruktur. | |
Close | Schließt das ServerDocument-Objekt. | |
Equals | Bestimmt, ob das angegebene Object und das aktuelle Object gleich sind. (Von Object geerbt.) | |
Finalize | Gibt einem Objekt Gelegenheit zu dem Versuch, Ressourcen freizugeben und andere Bereinigungen durchzuführen, bevor es von der Garbage Collection freigegeben wird. (Von Object geerbt.) | |
GetCustomizationVersion | Gibt die Version von Visual Studio Tools for Office-Laufzeit zurück, die zum Erstellen der Anpassung verwendet wurde, die dem angegebenen Dokument zugeordnet ist. | |
GetHashCode | Fungiert als Hashfunktion für einen bestimmten Typ. (Von Object geerbt.) | |
GetType | Ruft den Type der aktuellen Instanz ab. (Von Object geerbt.) | |
IsCacheEnabled | Ruft einen Wert ab, der angibt, ob das angegebene Dokument einen Datencache besitzt. | |
IsCustomized | Ruft einen Wert ab, der angibt, ob das angegebene Dokument über eine Anpassung verfügt, die mit Visual Studio 2010-Tools for Office-Laufzeit erstellt wurde. | |
MemberwiseClone | Erstellt eine flache Kopie des aktuellen Object. (Von Object geerbt.) | |
RemoveCustomization | Entfernt die Anpassung aus dem Dokument. | |
Save | Speichert alle Änderungen, die am Dokument mithilfe der ServerDocument-Klasse vorgenommen wurden. | |
ToString | Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt. (Von Object geerbt.) |
Zum Seitenanfang
Explizite Schnittstellenimplementierungen
Name | Beschreibung | |
---|---|---|
IDisposable.Dispose | Gibt alle vom ServerDocument verwendeten Ressourcen frei. |
Zum Seitenanfang
Hinweise
Mit der ServerDocument-Klasse können Sie bestimmte Aspekte von Anpassungen auf Dokumentebene auf einem Computer verwalten, selbst wenn Excel oder Word nicht installiert sind. Diese Klasse wird üblicherweise in Anwendungen verwendet, die nicht in Office integriert sind, z. B. Konsolenprojekte oder Windows Forms-Projekte, im Gegensatz zu Office-Projekten.
Mit den folgenden Membern der ServerDocument-Klasse können Sie allgemeine Aufgaben ausführen:
Um auf Daten im Datencache eines Dokuments auf einem Server zuzugreifen und diese zu ändern, verwenden Sie die CachedData-Eigenschaft.
Um eine Anpassung programmgesteuert an ein Dokument anzufügen oder eine Anpassung aus einem Dokument zu entfernen, verwenden Sie die Methoden AddCustomization und RemoveCustomization.
Um auf die URL des Bereitstellungsmanifests, das dem Dokument zugeordnet ist, zuzugreifen oder sie zu ändern, verwenden Sie die DeploymentManifestUrl-Eigenschaft.
Es gibt zwei verschiedene Versionen der ServerDocument-Klasse in der Visual Studio 2010-Tools for Office-Laufzeit. Die Version, die Sie verwenden sollten, hängt vom .NET Framework-Ziel der Anwendung ab, in der die Klasse verwendet werden soll:
Verwenden Sie für Anwendungen, die auf .NET Framework 4 ausgerichtet sind, die Microsoft.VisualStudio.Tools.Applications.ServerDocument-Klasse in der Assembly Microsoft.VisualStudio.Tools.Applications.ServerDocument.dll.
Verwenden Sie für Anwendungen, die auf .NET Framework 3.5 ausgerichtet sind, die Microsoft.VisualStudio.Tools.Applications.ServerDocument-Klasse in der Assembly Microsoft.VisualStudio.Tools.Applications.ServerDocument.v10.0.dll.
Weitere Informationen finden Sie unter Verwalten von Dokumenten auf einem Server mit der ServerDocument-Klasse.
Auswählen des zu verwendenden Konstruktors
Um mit der ServerDocument-Klasse auf die zwischengespeicherten Daten oder die Bereitstellungsmanifest-URL in einem Dokument zuzugreifen, müssen Sie ein ServerDocument-Objekt erstellen.
Es gibt zwei Sätze von ServerDocument-Konstruktoren:
Ein Satz, mit dem Sie auf ein Dokument zugreifen können, das bereits im Arbeitsspeicher geöffnet wurde.
Ein Satz, mit dem Sie auf ein Dokument zugreifen können, das sich auf einem Datenträger befindet.
Zugreifen auf ein Dokument im Arbeitsspeicher
Um auf ein Dokument zuzugreifen, das bereits im Arbeitsspeicher geöffnet wurde, verwenden Sie einen der folgenden Konstruktoren:
Diese Konstruktoren akzeptieren ein Bytearray oder einen Stream, der das Dokument im Arbeitsspeicher darstellt. Dies ist hilfreich, wenn Sie die zwischengespeicherten Daten oder das Anwendungsmanifest im Dokument ändern möchten, bevor Sie sie bzw. es mithilfe des HTTP-Protokolls an ein Ziel streamen. Zum Verwenden dieser Konstruktoren muss das Dokument bereits über eine Anpassung verfügen. Andernfalls lösen diese Konstruktoren eine CannotLoadManifestException-Ausnahme aus.
Zugreifen auf ein Dokument, das sich auf einem Datenträger befindet
Um auf ein Dokument zuzugreifen, das sich auf einem Datenträger befindet, verwenden Sie einen der folgenden Konstruktoren:
Diese Konstruktoren akzeptieren den vollständigen Pfad des Dokuments, das Sie öffnen möchten. Standardmäßig wird das Dokument mit Lese-/Schreibzugriff geöffnet. Wenn Sie das Dokument nur mit Lesezugriff bzw. nur mit Schreibzugriff öffnen möchten, verwenden Sie den Konstruktor, der über einen FileAccess-Parameter verfügt.
Beispiele
Im folgenden Codebeispiel wird ein neues ServerDocument erstellt, das ein angegebenes Dokument lädt. Dann wird die URL des Bereitstellungsmanifests für die Anpassung angezeigt, die an das Dokument angefügt ist.
Für dieses Beispiel sind erforderlich:
Ein Konsolenanwendungsprojekt oder ein anderes Nicht-Office-Projekt.
Verweise auf die folgenden Assemblys:
Microsoft.VisualStudio.Tools.Applications.ServerDocument.dll und Microsoft.VisualStudio.Tools.Applications.Runtime.dll (wenn das Projekt auf .NET Framework 4 abzielt)
oder
Microsoft.VisualStudio.Tools.Applications.ServerDocument.v10.0.dll und Microsoft.VisualStudio.Tools.Applications.Runtime.v9.0.dll (wenn das Projekt auf .NET Framework 3.5 abzielt).
Imports-Anweisungen (für Visual Basic) oder using-Anweisungen (für C#) für Microsoft.VisualStudio.Tools.Applications- und Microsoft.VisualStudio.Tools.Applications.Runtime-Namespaces am Anfang der Codedatei.
Private Sub CreateServerDocumentFromPath(ByVal documentPath As String)
Dim runtimeVersion As Integer = 0
Dim serverDocument1 As ServerDocument = Nothing
Try
runtimeVersion = ServerDocument.GetCustomizationVersion(documentPath)
If runtimeVersion = 3 Then
serverDocument1 = New ServerDocument(documentPath)
MessageBox.Show("The URL of the deployment manifest is: " & vbLf & _
serverDocument1.DeploymentManifestUrl.ToString())
End If
Catch ex As System.IO.FileNotFoundException
System.Windows.Forms.MessageBox.Show("The specified document does not exist.")
Catch ex As UnknownCustomizationFileException
System.Windows.Forms.MessageBox.Show("The specified document has a file " & _
"extension that is not supported by Visual Studio Tools for Office.")
Finally
If Not (serverDocument1 Is Nothing) Then
serverDocument1.Close()
End If
End Try
End Sub
private void CreateServerDocumentFromPath(string documentPath)
{
int runtimeVersion = 0;
ServerDocument serverDocument1 = null;
try
{
runtimeVersion = ServerDocument.GetCustomizationVersion(documentPath);
if (runtimeVersion == 3)
{
serverDocument1 = new ServerDocument(documentPath);
MessageBox.Show("The URL of the deployment manifest is: \n" +
serverDocument1.DeploymentManifestUrl.ToString());
}
}
catch (System.IO.FileNotFoundException)
{
System.Windows.Forms.MessageBox.Show("The specified document does not exist.");
}
catch (UnknownCustomizationFileException)
{
System.Windows.Forms.MessageBox.Show("The specified document has a file " +
"extension that is not supported by Visual Studio Tools for Office.");
}
finally
{
if (serverDocument1 != null)
serverDocument1.Close();
}
}
Threadsicherheit
Alle öffentlichen static (Shared in Visual Basic)-Member dieses Typs sind threadsicher. Bei Instanzmembern ist die Threadsicherheit nicht gewährleistet.
Siehe auch
Referenz
Microsoft.VisualStudio.Tools.Applications-Namespace
Weitere Ressourcen
Verwalten von Dokumenten auf einem Server mit der ServerDocument-Klasse
Anwendungs- und Bereitstellungsmanifeste in Office-Projektmappen
Zugreifen auf Daten in Dokumenten auf dem Server
Gewusst wie: Einfügen von Daten in eine Arbeitsmappe auf einem Server
Gewusst wie: Abrufen von zwischengespeicherten Daten aus einer Arbeitsmappe auf einem Server
Gewusst wie: Ändern zwischengespeicherter Daten in einer Arbeitsmappe auf einem Server