ServerDocument.Close Method (2003 System)
Closes the ServerDocument.
Namespace: Microsoft.VisualStudio.Tools.Applications.Runtime
Assembly: Microsoft.VisualStudio.Tools.Applications.Runtime (in Microsoft.VisualStudio.Tools.Applications.Runtime.dll)
Syntax
'Declaration
Public Sub Close
'Usage
Dim instance As ServerDocument
instance.Close()
public void Close()
Remarks
Call this method to release all resources and close the ServerDocument.
Examples
The following code example creates a new ServerDocument, modifies data that is cached in the specified document, and then uses the Close method to close the ServerDocument. This example requires a reference to the Microsoft.VisualStudio.Tools.Applications.Runtime assembly, and an Imports (for Visual Basic) or using (for C#) statement for the Microsoft.VisualStudio.Tools.Applications.Runtime namespace at the top of your code file.
Private customerOrdersSet As DataSet
Private Sub LoadCachedData(ByVal fileName As String)
If ServerDocument.IsCacheEnabled(fileName) Then
Dim serverDocument1 As ServerDocument = Nothing
Try
serverDocument1 = New ServerDocument(fileName)
customerOrdersSet = New DataSet()
' Identify the namespace and the class that
' contains the cached data object.
Dim hostItem1 As CachedDataHostItem = _
serverDocument1.CachedData.HostItems( _
"DataCachingSource.ThisWorkbook")
' Identify the name of the cached data object.
Dim dataItem1 As CachedDataItem = _
hostItem1.CachedData("customerOrdersCached")
' Read the cached data into the local DataSet.
If Nothing <> dataItem1.Xml AndAlso _
Nothing <> dataItem1.Schema Then
Dim xmlReader As New System.IO.StringReader( _
dataItem1.Xml)
Dim schemaReader As New System.IO.StringReader( _
dataItem1.Schema)
customerOrdersSet.ReadXmlSchema(schemaReader)
customerOrdersSet.ReadXml(xmlReader)
' Modify the data.
Dim row As DataRow
For Each row In customerOrdersSet.Tables(0).Rows
Dim orders As Integer = Fix(row("OrderQuantity"))
row("OrderQuantity") = orders * 2
Next row
' Write the modified data back to the
' cached data in the worksheet.
dataItem1.SerializeDataInstance(customerOrdersSet)
serverDocument1.Save()
End If
Finally
If Not serverDocument1 Is Nothing Then
serverDocument1.Close()
End If
End Try
Else
MsgBox("The specified document does not have " + _
"a data cache.")
End If
End Sub
private DataSet customerOrdersSet;
private void LoadCachedData(string fileName)
{
if (ServerDocument.IsCacheEnabled(fileName))
{
ServerDocument serverDocument1 = null;
try
{
serverDocument1 = new ServerDocument(fileName);
customerOrdersSet = new DataSet();
// Identify the namespace and the class that contains
// the cached data object.
CachedDataHostItem hostItem1 =
serverDocument1.CachedData.HostItems[
"DataCachingSource.ThisWorkbook"];
// Identify the name of the cached data object.
CachedDataItem dataItem1 = hostItem1.CachedData[
"customerOrdersCached"];
// Read the cached data into the local DataSet.
if (null != dataItem1.Xml && null != dataItem1.Schema)
{
System.IO.StringReader xmlReader =
new System.IO.StringReader(dataItem1.Xml);
System.IO.StringReader schemaReader =
new System.IO.StringReader(dataItem1.Schema);
customerOrdersSet.ReadXmlSchema(schemaReader);
customerOrdersSet.ReadXml(xmlReader);
// Modify the data.
foreach (DataRow row in
customerOrdersSet.Tables[0].Rows)
{
int orders = (int)row["OrderQuantity"];
row["OrderQuantity"] = orders * 2;
}
// Write the modified data back to the
// cached data in the worksheet.
dataItem1.SerializeDataInstance(customerOrdersSet);
serverDocument1.Save();
}
}
finally
{
if (serverDocument1 != null)
serverDocument1.Close();
}
}
else
{
MessageBox.Show("The specified document does not have " +
"a data cache.");
}
}
Permissions
- Full trust for the immediate caller. This member cannot be used by partially trusted code. For more information, see Using Libraries from Partially Trusted Code.