ServerDocument Classe (sistema de 2007)

Fornece acesso a dados em cache e informações de personalização em um documento que faz parte de uma personalização em nível de documento para o Microsoft Office Excel 2007 ou Microsoft Office palavra 2007.

Namespace:  Microsoft.VisualStudio.Tools.Applications
Assembly:  Microsoft.VisualStudio.Tools.Applications.ServerDocument.v9.0 (em Microsoft.VisualStudio.Tools.Applications.ServerDocument.v9.0.dll)

Sintaxe

<PermissionSetAttribute(SecurityAction.Demand, Name := "FullTrust")> _
Public NotInheritable Class ServerDocument _
    Implements IDisposable

Dim instance As ServerDocument
[PermissionSetAttribute(SecurityAction.Demand, Name = "FullTrust")]
public sealed class ServerDocument : IDisposable

Comentários

Use o ServerDocument classe gerenciar determinados aspectos de personalizações em nível de documento em um computador que não tem o Excel ou palavra instalado.

Use os seguintes membros do ServerDocument classe para executar tarefas comuns:

  • Para acesso e modificar dados em cache de dados de um documento em um servidor, use o CachedData propriedade.

  • Para programaticamente uma personalização de anexar a um documento ou remover uma personalização de um documento, use o AddCustomization e RemoveCustomization métodos.

  • Para acessar ou alterar a URL de manifesto de implantação que está associado com o documento, use o DeploymentManifestUrl propriedade.

Para obter mais informações, consulte Gerenciando documentos em um servidor usando a classe do ServerDocument.

Escolhendo qual construtor a ser usado

Para usar o ServerDocument classe para acesso os dados armazenados em cache ou a URL de manifesto de implantação em um documento, você deve criar um ServerDocument objeto.

Há dois conjuntos de ServerDocument construtores:

  • conjunto A que você pode usar para acesso um documento que já foi aberto na memória.

  • conjunto A que você pode usar para acesso um documento que está no disco.

Acessando um documento na memória

Para acesso um documento que já foi aberto na memória, use um dos seguintes construtores:

Esses construtores aceitam uma matriz de byte ou um Stream que representa o documento na memória. Isso é útil se você deseja modificar os dados armazenados em cache ou aplicativo manifesto no documento antes de streaming para um destino, usando o protocolo HTTP.Para usar esses construtores, o documento já deve ter um Visual Studio Tools for Office personalização; caso contrário, esses construtores irão gerar um CannotLoadManifestException exceção.

Acessando um documento no disco

Para acesso um documento que está no disco, use um dos seguintes construtores:

Esses construtores aceite o caminho completo do documento que você deseja em em aberto.Por padrão, o documento é aberto com acesso de leitura/gravar.Se você desejar em em aberto o documento com acesso somente leitura ou somente leitura, use o construtor que possui um FileAccess parâmetro.

Noções básicas sobre versões diferentes da classe ServerDocument

Visual Studio Tools for Office fornece versões diferentes das ServerDocument classe de soluções para Microsoft Office 2003 e o Microsoft Office sistema de 2007. Esta versão do ServerDocument classe pode ser usado somente com soluções criadas usando modelos de projeto documento-nível para palavra 2007 e Excel 2007.

Para trabalhar com uma solução que foi criada usando modelos de projeto para palavra 2003 e Excel 2003, use o ServerDocument classe na Microsoft.VisualStudio.Tools.Applications.Runtime espaço para nome.

Para obter mais informações, consulte Gerenciando documentos em um servidor usando a classe do ServerDocument.Para obter um exemplo de código que demonstra como usar as duas versões do ServerDocument classe no mesmo arquivo de código, consulte Como: Gravar código que usa duAmbos versões da clAmbosse ServerDocument.

Exemplos

O exemplo de código a seguir cria um novo ServerDocument que carrega um documento especificado e exibe a URL de manifesto de implantação para o Visual Studio Tools for Office personalização é anexada ao documento. Antes de criar o objeto, o código usa o GetCustomizationVersion método para verificar se a personalização foi criada usando o Microsoft Visual Studio Tools para o Microsoft Office system (versão 3.0 Runtime). Este é o tempo de execução único que esta versão do ServerDocument classe é compatível com. Para obter mais informações, consulte Gerenciando documentos em um servidor usando a classe do ServerDocument.

Este exemplo requer uma referência aos assemblies Microsoft.VisualStudio.Tools.Applications.ServerDocument.v9.0.dll e Microsoft.VisualStudio.Tools.Applications.tempo de execução.v9.0.dll e Imports (para Visual Basic) ou using (para translation from VPE for Csharp) instruções para Microsoft.VisualStudio.Tools.Applications e Microsoft.VisualStudio.Tools.Applications.Runtime espaços para nome na parte superior do seu arquivo de código.

PrivateSub CreateServerDocumentFromPath(ByVal documentPath AsString)
    Dim runtimeVersion AsInteger = 0
    Dim serverDocument1 As ServerDocument = NothingTry
        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())
        EndIfCatch 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.")
    FinallyIfNot (serverDocument1 IsNothing) Then
            serverDocument1.Close()
        EndIfEndTryEndSub
privatevoid 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();
    }
}

Hierarquia de herança

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

Acesso thread-safe

Quaisquer membros static (Shared no Visual Basic) públicos deste tipo são thread-safe. Não há garantia de que qualquer membro de instância seja thread-safe.

Consulte também

Referência

Membros ServerDocument

Namespace Microsoft.VisualStudio.Tools.Applications

Outros recursos

Gerenciando documentos em um servidor usando a classe do ServerDocument

Aplicativo e manifestos de implantação in Office Solutions

Acessando dados em documentos no servidor

Como: Inserir dados em uma pasta de trabalho em um servidor

Como: Recuperar dados de uma pasta de trabalho em um servidor armazenados em cache

Como: Alterar de dados em uma pasta de trabalho em um servidor em cache