Compartilhar via


Classe ServerDocument

Fornece acesso a dados em cache e informações de personalização em um documento ou pasta de trabalho que faz parte de uma personalização em nível de documento criada usando as ferramentas de desenvolvimento do Office em Visual Studio.

Hierarquia de herança

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

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

Sintaxe

'Declaração
<PermissionSetAttribute(SecurityAction.Demand, Name := "FullTrust")> _
Public NotInheritable Class ServerDocument _
    Implements IDisposable
[PermissionSetAttribute(SecurityAction.Demand, Name = "FullTrust")]
public sealed class ServerDocument : IDisposable

O tipo ServerDocument expõe os membros a seguir.

Construtores

  Nome Descrição
Método público ServerDocument(String) Inicializa uma nova instância de ServerDocument classe usando o caminho completo do documento a ser carregado.
Método público ServerDocument(array<Byte[], String) Inicializa uma nova instância de ServerDocument classe usando uma matriz de bytes que representa o documento a ser carregado e a extensão de nome de arquivo do documento.
Método público ServerDocument(Stream, String) Inicializa uma nova instância de ServerDocument classe usando um fluxo que representa o documento a ser carregado e a extensão de nome de arquivo do documento.
Método público ServerDocument(String, FileAccess) Inicializa uma nova instância de ServerDocument classe usando o caminho completo do documento a ser carregado e um valor que indica que o acesso a arquivos para o documento.

Início

Propriedades

  Nome Descrição
Propriedade pública CachedData Obtém um CachedData objeto que representa os dados em cache que estão contidos no documento.
Propriedade pública DeploymentManifestUrl Obtém ou define o URL de manifesto de implantação para a personalização que está associado ao documento.
Propriedade pública Document Obtém a matriz de bytes de um documento na memória que é carregado na ServerDocument.
Propriedade pública SolutionId Obtém um GUID que o Visual Studio Tools for Office runtime usa para identificar a solução.

Início

Métodos

  Nome Descrição
Método públicoMembro estático AddCustomization(String, Uri) Anexa uma personalização no documento especificado usando o manifesto de implantação e o nome do assembly especificado.
Método públicoMembro estático AddCustomization(String, String, Guid, Uri) Anexa uma personalização no documento especificado usando o documento especificado, o nome de assembly, identificação da solução e manifesto de implantação.
Método públicoMembro estático AddCustomization(String, String, Guid, Uri, Boolean, array<String[]%) Infraestrutura.
Método público Close Fecha o ServerDocument objeto.
Método público Equals Determina se o especificado Object é igual a atual Object. (Herdado de Object.)
Método protegido Finalize Permite que um objeto tentar liberar recursos e executar outras operações de limpeza antes que ele é recuperado pela coleta de lixo. (Herdado de Object.)
Método públicoMembro estático GetCustomizationVersion Retorna a versão do Visual Studio Tools for Office runtime que foi usado para criar a personalização está associada ao documento especificado.
Método público GetHashCode Serves as a hash function for a particular type. (Herdado de Object.)
Método público GetType Obtém o Type da instância atual. (Herdado de Object.)
Método públicoMembro estático IsCacheEnabled Obtém um valor que indica se o documento especificado tem um cache de dados.
Método públicoMembro estático IsCustomized Obtém um valor que indica se o documento especificado tem uma personalização que foi criada usando o Visual Studio 2010 Tools for Office Runtime.
Método protegido MemberwiseClone Cria uma cópia superficial do atual Object. (Herdado de Object.)
Método públicoMembro estático RemoveCustomization Remove a personalização do documento.
Método público Save Salva as alterações foram feitas no documento usando o ServerDocument classe.
Método público ToString Retorna um string que representa o objeto atual. (Herdado de Object.)

Início

Implementações explícitas da interface

  Nome Descrição
Implementação explícita da interfaceMétodo particular IDisposable.Dispose Libera todos os recursos usados pela ServerDocument.

Início

Comentários

Use o ServerDocument de classe para gerenciar determinados aspectos de personalizações em nível de documento em um computador que não tenha o Excel ou Word instalado. Você geralmente usa essa classe em aplicativos que não integram com o Office, como, por exemplo, projetos de Console ou projetos Windows Forms, em vez de projetos do Office.

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

  • Para acessar e modificar dados no 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 ao documento, use o DeploymentManifestUrl propriedade.

Existem duas versões diferentes da ServerDocument classe na Visual Studio 2010 Tools for Office Runtime. A versão que você deve usar depende do destino.NET Framework do aplicativo no qual você deseja usar a classe:

  • Para aplicativos que se destinam a .NET Framework 4, use o Microsoft.VisualStudio.Tools.Applications.ServerDocument classe no assembly Microsoft.VisualStudio.Tools.Applications.ServerDocument.dll.

  • Para aplicativos que visam o.NET Framework 3.5, use o Microsoft.VisualStudio.Tools.Applications.ServerDocument classe no assembly Microsoft.VisualStudio.Tools.Applications.ServerDocument.v10.0.dll.

For more information, see Gerenciamento de documentos em um servidor usando a classe ServerDocument.

Escolhendo o construtor para uso

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

Há dois conjuntos de ServerDocument construtores:

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

  • Um conjunto que você pode usar para acessar um documento que está no disco.

Acessando um documento na memória

Para acessar um documento que já foi aberto na memória, use um dos construtores a seguir:

Esses construtores aceitam uma matriz de bytes ou um Stream que representa o documento na memória. Isso é útil se você quiser modificar os dados armazenados em cache ou aplicativo manifesto no documento antes de streaming-lo para um destino usando o protocolo HTTP. Para usar esses construtores, o documento já deve ter uma personalização; Caso contrário, esses construtores lançará um CannotLoadManifestException exceção.

Acessando um documento no disco

Para acessar um documento que está no disco, use um dos construtores a seguir:

Esses construtores aceitam o caminho completo do documento que você deseja abrir. Por padrão, o documento é aberto com acesso de leitura/gravação. Se você deseja abrir o documento com acesso somente leitura ou somente para gravação, use o construtor que possui um FileAccess parâmetro.

Exemplos

O exemplo de código a seguir cria um novo ServerDocument que carrega um documento especificado e exibe o URL do manifesto de implantação para a personalização anexado ao documento.

This example requires:

  • Um projeto de aplicativo de console ou algum outro projeto de não-Office.

  • Referências aos assemblies seguintes:

    • Microsoft.VisualStudio.Tools.Applications.ServerDocument.dll e Microsoft.VisualStudio.Tools.Applications.Runtime.dll (se os destinos do projeto de .NET Framework 4).

      or

    • Microsoft.VisualStudio.Tools.Applications.ServerDocument.v10.0.dll e Microsoft.VisualStudio.Tools.Applications.Runtime.v9.0.dll (se os destinos do projeto a.NET Framework 3.5).

  • Imports(para Visual Basic) ou using (para C#) instruções para Microsoft.VisualStudio.Tools.Applications e Microsoft.VisualStudio.Tools.Applications.Runtime namespaces no topo do seu arquivo de código.

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

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

Namespace Microsoft.VisualStudio.Tools.Applications

Outros recursos

Gerenciamento de documentos em um servidor usando a classe ServerDocument

Manifestos de aplicativo e implantação em soluções do Office

Acesso a dados em documentos no servidor

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

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

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