Partager via


ServerDocument, classe

Permet d'accéder aux données mises en mémoire cache et aux informations de personnalisation dans un document ou un classeur qui fait partie d'une personnalisation au niveau du document créée à l'aide des outils de développement Office dans Visual Studio.

Hiérarchie d'héritage

System.Object
  Microsoft.VisualStudio.Tools.Applications.ServerDocument

Espace de noms :  Microsoft.VisualStudio.Tools.Applications
Assembly :  Microsoft.VisualStudio.Tools.Applications.ServerDocument (dans Microsoft.VisualStudio.Tools.Applications.ServerDocument.dll)

Syntaxe

'Déclaration
<PermissionSetAttribute(SecurityAction.Demand, Name := "FullTrust")> _
Public NotInheritable Class ServerDocument _
    Implements IDisposable
[PermissionSetAttribute(SecurityAction.Demand, Name = "FullTrust")]
public sealed class ServerDocument : IDisposable

Le type ServerDocument expose les membres suivants.

Constructeurs

  Nom Description
Méthode publique ServerDocument(String) Initialise une nouvelle instance de la classe ServerDocument en utilisant le chemin d'accès complet du document à charger.
Méthode publique ServerDocument(array<Byte[], String) Initialise une nouvelle instance de la classe ServerDocument en utilisant un tableau d'octets qui représente le document à charger et l'extension de nom de fichier du document.
Méthode publique ServerDocument(Stream, String) Initialise une nouvelle instance de la classe ServerDocument en utilisant un flux de données qui représente le document à charger et l'extension de nom de fichier du document.
Méthode publique ServerDocument(String, FileAccess) Initialise une nouvelle instance de la classe ServerDocument en utilisant le chemin d'accès complet du document à charger et une valeur qui indique l'accès au fichier du document.

Début

Propriétés

  Nom Description
Propriété publique CachedData Obtient un objet CachedData qui représente les données en mémoire cache contenues dans le document.
Propriété publique DeploymentManifestUrl Obtient ou définit l'URL du manifeste de déploiement de la personnalisation qui est associée au document.
Propriété publique Document Obtient le tableau d'octets d'un document en mémoire chargé dans le ServerDocument.
Propriété publique SolutionId Obtient un GUID que Visual Studio Tools pour Office Runtime utilise pour identifier la solution.

Début

Méthodes

  Nom Description
Méthode publiqueMembre statique AddCustomization(String, Uri) Joint une personnalisation au document spécifié en utilisant le nom de l'assembly spécifié et le manifeste de déploiement.
Méthode publiqueMembre statique AddCustomization(String, String, Guid, Uri) Joint une personnalisation au document spécifié en utilisant le document, le nom d''assembly, l'ID de solution et le manifeste de déploiement spécifiés.
Méthode publiqueMembre statique AddCustomization(String, String, Guid, Uri, Boolean, array<String[]%) Infrastructure.
Méthode publique Close Ferme l'objet ServerDocument.
Méthode publique Equals Détermine si l'objet spécifié est identique à l'objet actuel. (Hérité de Object.)
Méthode publiqueMembre statique GetCustomizationVersion Retourne la version de Visual Studio Tools pour Office Runtime utilisé pour créer la personnalisation associée au document spécifié.
Méthode publique GetHashCode Sert de fonction de hachage par défaut. (Hérité de Object.)
Méthode publique GetType Obtient le Type de l'instance actuelle. (Hérité de Object.)
Méthode publiqueMembre statique IsCacheEnabled Obtient une valeur qui indique si le document spécifié a un cache de données.
Méthode publiqueMembre statique IsCustomized Obtient une valeur qui indique si le document spécifié a une personnalisation créée à l'aide de Visual Studio 2010 Tools pour Office Runtime.
Méthode publiqueMembre statique RemoveCustomization Supprime la personnalisation du document.
Méthode publique Save Enregistre toutes les modifications apportées au document en utilisant la classe ServerDocument.
Méthode publique ToString Retourne une chaîne qui représente l'objet actif. (Hérité de Object.)

Début

Implémentations d'interface explicite

  Nom Description
Implémentation d'interface expliciteMéthode privée IDisposable.Dispose Libère toutes les ressources utilisées par ServerDocument.

Début

Notes

Utilisez la classe ServerDocument pour gérer certains aspects de personnalisations au niveau du document sur un ordinateur où Excel ou Word n'est pas installé. En général, vous utilisez cette classe dans les applications qui ne s'intègrent pas à Office, comme des projets console ou Windows Forms, plutôt que des projets Office.

Utilisez les membres suivants de la classe ServerDocument pour effectuer des tâches courantes :

  • Pour accéder et modifier les données dans le cache des données d'un document sur un serveur, utilisez la propriété CachedData.

  • Pour joindre par programme une personnalisation à un document ou supprimer une personnalisation d'un document, utilisez les méthodes AddCustomization et RemoveCustomization.

  • Pour accéder à l'URL du manifeste de déploiement associé au document ou la modifier, utilisez la propriété DeploymentManifestUrl.

Il existe deux versions de la classe d'ServerDocument dans Visual Studio 2010 Tools pour Office Runtime. La version que vous devez utiliser dépend du .NET Framework cible de l'application dans laquelle vous souhaitez utiliser la classe :

  • Pour les applications qui ciblent .NET Framework 4 ou .NET Framework 4.5, utilisez la classe d'Microsoft.VisualStudio.Tools.Applications.ServerDocument dans l'assembly Microsoft.VisualStudio.Tools.Applications.ServerDocument.dll.

  • Pour les applications qui ciblent le .NET Framework 3.5, utilisez la classe Microsoft.VisualStudio.Tools.Applications.ServerDocument, dans l'assembly Microsoft.VisualStudio.Tools.Applications.ServerDocument.v10.0.dll.

Pour plus d'informations, consultez Gestion de documents sur un serveur à l'aide de la classe ServerDocument.

Choix du constructeur à utiliser

Pour utiliser la classe ServerDocument pour accéder aux données en mémoire cache ou à l'URL du manifeste de déploiement dans un document, vous devez créer un objet ServerDocument.

Il existe deux jeux de constructeurs ServerDocument :

  • Un jeu que vous pouvez utiliser pour accéder à un document qui est déjà ouvert en mémoire.

  • Un jeu que vous pouvez utiliser pour accéder à un document sur disque.

Bb514484.collapse_all(fr-fr,VS.120).gifAccès à un document en mémoire

Pour accéder à un document déjà ouvert en mémoire, utilisez l'un des constructeurs suivants :

Ces constructeurs acceptent un tableau d'octets ou un Stream qui représente le document en mémoire. Cela est utile si vous souhaitez modifier les données en mémoire cache ou le manifeste de l'application dans le document avant de le transmettre en continu à une destination en utilisant le protocole HTTP. Pour utiliser ces constructeurs, le document doit déjà avoir une personnalisation, sinon ces constructeurs lèvent une exception CannotLoadManifestException.

Bb514484.collapse_all(fr-fr,VS.120).gifAccès à un document sur disque

Pour accéder à un document sur disque, utilisez l'un des constructeurs suivants :

Ces constructeurs acceptent le chemin d'accès complet du document à ouvrir. Par défaut, le document est ouvert en lecture/écriture. Si vous souhaitez ouvrir le document en lecture seule ou en écriture seule, utilisez le constructeur qui a un paramètre FileAccess.

Exemples

L'exemple de code suivant crée un ServerDocument qui charge un document spécifié, puis affiche l'URL du manifeste de déploiement de la personnalisation jointe au document.

Cet exemple nécessite :

  • Projet d'application console ou un autre projet non-Office.

  • Références aux assemblys suivants :

    • Microsoft.VisualStudio.Tools.Applications.ServerDocument.dll et Microsoft.VisualStudio.Tools.Applications.Runtime.dll (si le projet cible .NET Framework 4 ou .NET Framework 4.5).

      ou

    • Microsoft.VisualStudio.Tools.Applications.ServerDocument.v10.0.dll et Microsoft.VisualStudio.Tools.Applications.Runtime.v9.0.dll (si le projet cible le .NET Framework 3.5).

  • Instructions Imports (pour Visual Basic) ou using pour C#) pour les espaces de noms Microsoft.VisualStudio.Tools.Applications et Microsoft.VisualStudio.Tools.Applications.Runtime au haut de votre fichier de code.

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();
    }
}

Sécurité des threads

Tous les membres static (Shared en Visual Basic) publics de ce type sont thread-safe. Il n'est pas garanti que les membres d'instance soient thread-safe.

Voir aussi

Référence

Microsoft.VisualStudio.Tools.Applications, espace de noms

Autres ressources

Gestion de documents sur un serveur à l'aide de la classe ServerDocument

Manifestes d'application et de déploiement dans les solutions Office

Accès aux données des documents sur le serveur