Konstruktor ServerDocument — (Stream, String)
Inicjuje nowe wystąpienie ServerDocument klasy za pomocą strumienia, który reprezentuje dokument do załadowania i rozszerzenie nazwy pliku dokumentu.
Przestrzeń nazw: Microsoft.VisualStudio.Tools.Applications
Zestaw: Microsoft.VisualStudio.Tools.Applications.ServerDocument (w Microsoft.VisualStudio.Tools.Applications.ServerDocument.dll)
Składnia
'Deklaracja
Public Sub New ( _
stream As Stream, _
fileType As String _
)
public ServerDocument(
Stream stream,
string fileType
)
Parametry
- stream
Typ: System.IO.Stream
Strumienia, który reprezentuje dokument do załadowania.
- fileType
Typ: System.String
Rozszerzenie nazwy pliku dokumentu, który jest przechowywany w bytes parametr, poprzedzoną kropką (.)— na przykład "xlsx" lub ".docx".
Wyjątki
Wyjątek | Warunek |
---|---|
ArgumentNullException | stream Parametr jest nullodwołanie o wartości null (Nothing w języku Visual Basic) lub jest pusty. -lub- fileType Parametr jest nullodwołanie o wartości null (Nothing w języku Visual Basic) lub pusty lub zawiera tylko znaki odstępu. |
ArgumentException | stream Parametr ma zerową długość lub jego bieżącej pozycji jest na końcu strumienia. |
UnknownCustomizationFileException | fileType Parametr określa rozszerzenie nazwy pliku, który nie jest obsługiwany przez Visual Studio 2010 Tools for Office Runtime. |
DocumentCustomizedWithPreviousRuntimeException | W pliku określonym przez documentPath ma dostosowania, który nie został utworzony za pomocą Visual Studio 2010 Tools dla pakietu Office Runtime lub Visual Studio Tools dla Microsoft Office system (w wersji 3.0 Runtime). |
Uwagi
Dostęp buforowanych informacji manifestu w dokumencie, który jest już w pamięci danych lub wdrożenia, przy użyciu tego konstruktora.Ten konstruktor jest otwierany dokument z uprawnieniami do odczytu/zapisu.
fileType Parametr jest używany tylko do określenia typ dokumentu, który jest przechowywany w tablicy bajtowej.Wartość fileType jest mapowany do jednego z typów plików, które są obsługiwane w przypadku dostosowań na poziomie dokumentu.Nie jest podejmowana próba jego otwarcia.Opcjonalnie można przekazywać w pełnej nazwy pliku (na przykład "Workbook1.xlsx"), ale jeśli w tym celu używany jest tylko rozszerzenie nazwy pliku.Aby uzyskać więcej informacji na temat obsługiwanych typów, zobacz Architektura dostosowań na poziomie dokumentu.
Aby przejść do tablicy bajtowej dla dokumentu po wywołaniu tego konstruktora, użyj Document właściwość.
Przykłady
Następujący kod w przykładzie wykorzystano ServerDocument(Stream, String) Konstruktor, aby utworzyć nową ServerDocument z FileStream zawierający skoroszyt programu Excel z rozszerzeniem nazwy pliku xlsx.Następnie kod wyświetla adres URL manifestu wdrażania dla dostosowania, który jest dołączony do dokumentu.
W tym przykładzie wymaga:
Projekt aplikacji konsoli lub innego projektu nienależących do pakietu Office.
Odwołania do następujących zestawów:
Microsoft.VisualStudio.Tools.Applications.ServerDocument.dll i Microsoft.VisualStudio.Tools.Applications.Runtime.dll (jeśli cele projektu .NET Framework 4 lub .NET Framework 4.5).
lub
Microsoft.VisualStudio.Tools.Applications.ServerDocument.v10.0.dll i Microsoft.VisualStudio.Tools.Applications.Runtime.v9.0.dll (Jeśli projekt jest przeznaczony dla.NET Framework 3.5).
Imports(dla języka Visual Basic) lub using (dla języka C#) oświadczenia dla Microsoft.VisualStudio.Tools.Applications i Microsoft.VisualStudio.Tools.Applications.Runtime obszarów nazw, u góry pliku kodu.
Private Sub CreateServerDocumentFromStream(ByVal documentPath As String)
Dim runtimeVersion As Integer = 0
Dim serverDocument1 As ServerDocument = Nothing
Dim stream As System.IO.FileStream = Nothing
Try
runtimeVersion = ServerDocument.GetCustomizationVersion(documentPath)
If runtimeVersion = 3 Then
stream = New System.IO.FileStream(documentPath, System.IO.FileMode.Open)
serverDocument1 = New ServerDocument(stream, "*.xlsx")
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
If Not (stream Is Nothing) Then
stream.Close()
End If
End Try
End Sub
private void CreateServerDocumentFromStream(string documentPath)
{
int runtimeVersion = 0;
ServerDocument serverDocument1 = null;
System.IO.FileStream stream = null;
try
{
runtimeVersion = ServerDocument.GetCustomizationVersion(documentPath);
if (runtimeVersion == 3)
{
stream = new System.IO.FileStream(
documentPath, System.IO.FileMode.Open);
serverDocument1 = new ServerDocument(stream,
"*.xlsx");
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();
if (stream != null)
stream.Close();
}
}
Zabezpieczenia programu .NET Framework
- Pełne zaufanie do bezpośredniego wywołującego. Tego elementu członkowskiego nie można używać w kodzie częściowo zaufanym. Aby uzyskać więcej informacji, zobacz Przy użyciu bibliotek z częściowo zaufanego kodu..