Aracılığıyla paylaş


CachedDataItem.Xml Özellik

Alır veya ayarlar tarafından temsil edilen önbelleğe alınmış veri nesnesi xml gösterimini CachedDataItem.

Ad alanı:  Microsoft.VisualStudio.Tools.Applications
Derleme:  Microsoft.VisualStudio.Tools.Applications.ServerDocument (Microsoft.VisualStudio.Tools.Applications.ServerDocument.dll içinde)

Sözdizimi

'Bildirim
Public Property Xml As String
public string Xml { get; set; }

Özellik Değeri

Tür: System.String
Tarafından temsil edilen önbelleğe alınmış veri nesnesi xml gösterimini CachedDataItem.

Notlar

Önbelleğe alınmış veri nesnesinin değerini almak için kullanmak Xml özelliği, önbelleğe alınan verileri nesnesinin yeni bir örneği xml gösterimine önbelleğe alınmış veri serisi kaldırılamadı.Bu kopyaya değişiklik ve değişiklikleri yeniden içine veri önbelleği seri hale getirmek.

Çoğu durumda, kullanabileceğiniz SerializeDataInstance veri önbelleğine değiştirilen nesne seri hale getirmek için yöntem.Değişiklikler için önbelleğe alınan verileri kendi seri hale getirme işlemi gerçekleştirmek isterseniz, ayrıca doğrudan yazabilirsiniz Xml özelliği.Ancak, değişiklikler yapıyorsanız bir DataSet, DataTable, ya da bir veritabanına kullanarak güncelleştirilecek bir typed dataset bir DataAdapter, değişiklikler için önbelleğe alınan verileri yazarken DiffGram biçiminde belirtin.Aksi halde, değişiklikleri DataSet veya DataTable olarak değiştirilen satırlar yerine yeni satırlar veritabanına eklenir.Daha fazla bilgi için bkz. Sunucudaki Belgelerde Verilere Erişme.

Örnekler

Aşağıdaki kod örneği Xml bir çalışma sayfasında bir Excel çalışma kitabını, önbelleğe alınmış bir dize değerini almak için özellik.Örnek değerini bir ileti kutusunda görüntüler.

Bu örnek aşağıdakileri gerektirir:

  • Belge düzeyinde özelleştirme içeren Excel için bir Sheet1 , sınıf ExcelWorkbook1 ad ve önbelleğe alınmış dizede Sheet1 adında bir sınıfı CachedString.

  • Bir konsol uygulaması projesi veya başka bir Office proje.

  • Aşağıdaki derlemeler başvuruları:

    • Microsoft.VisualStudio.Tools.Applications.ServerDocument.dll

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

  • Imports(Visual Basic için) veya using (için C#) ifadeleri için Microsoft.VisualStudio.Tools.Applications ve Microsoft.VisualStudio.Tools.Applications.Runtime kod dosyanızı üstündeki ad.

Private Sub ReadCachedStringValue(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

                Using stringReader As New System.IO.StringReader(dataItem1.Xml)
                    Dim serializer As New System.Xml.Serialization.XmlSerializer(GetType(String))
                    Dim cachedString As String = serializer.Deserialize(stringReader)
                    MessageBox.Show("The value of CachedString is: " + cachedString)
                End Using
            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 ReadCachedStringValue(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))
            {
                using (System.IO.StringReader stringReader =
                    new System.IO.StringReader(dataItem1.Xml))
                {
                    System.Xml.Serialization.XmlSerializer serializer =
                        new System.Xml.Serialization.XmlSerializer(typeof(string));
                    string cachedString = serializer.Deserialize(stringReader) as string;
                    MessageBox.Show("The value of CachedString is: " + cachedString);
                }
            }
        }
        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();
    }
}

Nasıl kullanılacağını gösteren bir kod örneği için Xml özelliği değiştirme ve değişiklikleri önbelleğe alınmış bir seri hale getirmek için DataSet, bkz: İzlenecek Yol: Sunucudaki Çalışma Kitabında Bulunan Önbelleğe Alınmış Verileri Değiştirme.

.NET Framework Güvenliği

Ayrıca bkz.

Başvuru

CachedDataItem Sınıf

Microsoft.VisualStudio.Tools.Applications Ad Alanı