Udostępnij za pośrednictwem


Właściwość CachedDataItem.DataType —

Zwraca lub ustawia nazwa kwalifikowana zestawu typu obiektu danych buforowanych.

Przestrzeń nazw:  Microsoft.VisualStudio.Tools.Applications
Zestaw:  Microsoft.VisualStudio.Tools.Applications.ServerDocument (w Microsoft.VisualStudio.Tools.Applications.ServerDocument.dll)

Składnia

'Deklaracja
Public Property DataType As String
public string DataType { get; set; }

Wartość właściwości

Typ: System.String
Nazwa kwalifikowana zestawu typu obiektu danych buforowanych.

Uwagi

DataType Właściwość zwraca zestawu kwalifikowaną nazwę typu buforowanych danych, która jest przydatna dla tworzenia nowego wystąpienia niestandardowego typu znajduje się w pamięci podręcznej danych.Na przykład, można uzyskać Type typu danych niestandardowych przekazując nazwa typu kwalifikowana zestawu do GetType metody.Następnie można utworzyć wystąpienia typu niestandardowego przez przekazanie tej Type jako parametr do Activator.CreateInstance metody.

Aby uzyskać szczegółowe informacje o formacie kwalifikowana zestawu typu ciąg, który jest zwracany przez DataType właściwości, zobacz Type.AssemblyQualifiedName właściwości.

Przykłady

Następujący kod w przykładzie wykorzystano SerializeDataInstance metodę, aby zmodyfikować wartość ciągu, który jest buforowany w arkuszu skoroszytu programu Excel.W kodzie wykorzystano DataType właściwość, aby sprawdzić, czy obiekt buforowanych danych jest ciąg przed przystąpieniem do modyfikowania go.

W tym przykładzie wymaga:

  • Dostosowywanie poziomie dokumentu do programu Excel, który ma Sheet1 klasy w ExcelWorkbook1 obszaru nazw i ciąg znaków buforowanych w Sheet1 klasę o nazwie CachedString.

  • 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

    • Microsoft.VisualStudio.Tools.Applications.Runtime.dll

  • Imports(dla języka Visual Basic) lub using (w języku C#) oświadczenia dla Microsoft.VisualStudio.Tools.Applications i Microsoft.VisualStudio.Tools.Applications.Runtime nazw u góry pliku kodu.

Private Sub ModifyCachedString(ByVal documentPath As String)
    Dim runtimeVersion As Integer = 0
    Dim serverDocument1 As ServerDocument = Nothing

    Try
        runtimeVersion = ServerDocument.GetCustomizationVersion(documentPath)
        If runtimeVersion <> 3 Then
            MessageBox.Show("This document does not have a Visual Studio Tools for Office " & _
                "customization, or it has a customization that was created with a version of " & _
                "the runtime that is incompatible with this version of the ServerDocument class.")
            Return
        End If

        If ServerDocument.IsCacheEnabled(documentPath) Then
            serverDocument1 = New ServerDocument(documentPath)
            Dim hostItem1 As CachedDataHostItem = _
                serverDocument1.CachedData.HostItems("ExcelWorkbook1.Sheet1")
            Dim dataItem1 As CachedDataItem = hostItem1.CachedData("CachedString")

            If dataItem1 IsNot Nothing AndAlso _
                Type.GetType(dataItem1.DataType).Equals(GetType(String)) Then

                dataItem1.SerializeDataInstance("This is the new cached string value.")
                serverDocument1.Save()
            End If
        Else
            MessageBox.Show("The specified document does not have cached data.")
        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 ModifyCachedString(string documentPath)
{
    int runtimeVersion = 0;
    ServerDocument serverDocument1 = null;

    try
    {
        runtimeVersion = ServerDocument.GetCustomizationVersion(documentPath);

        if (runtimeVersion != 3)
        {
            MessageBox.Show("This document does not have a Visual Studio Tools for " +
                "Office customization, or it has a customization that was created with " +
                "a version of the runtime that is incompatible with this version of the " +
                "ServerDocument class.");
            return;
        }

        if (ServerDocument.IsCacheEnabled(documentPath))
        {
            serverDocument1 = new ServerDocument(documentPath);
            CachedDataHostItem hostItem1 = 
                serverDocument1.CachedData.HostItems["ExcelWorkbook1.Sheet1"];
            CachedDataItem dataItem1 = hostItem1.CachedData["CachedString"];

            if (dataItem1 != null &&
                Type.GetType(dataItem1.DataType) == typeof(string))
            {
                dataItem1.SerializeDataInstance("This is the new cached string value.");
                serverDocument1.Save();
            }
        }
        else
        {
            MessageBox.Show("The specified document does not have cached data.");
        }
    }
    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();
    }
}

Zabezpieczenia programu .NET Framework

Zobacz też

Informacje

CachedDataItem Klasa

Przestrzeń nazw Microsoft.VisualStudio.Tools.Applications