Enum AccessCacheOptions

AccessCacheOptions enumeration

Cache options for data access. Can be combined with | operator for multiple options together.

[Flags]
public enum AccessCacheOptions

Values

NameValueDescription
None0No cache for any data access.
AllFFFFFFFFFFFFFFFFApply all possible optimizations for all kinds of data access in the workbook. All settings and data should not be changed during the optimized access.
PositionAndSize3Apply possible optimization for getting object(such as Shape)’s position and size. Row height and column width settings should not be changed during the optimized access.
CellsData9Apply possible optimization for getting cells’ values. Cells data(data and settings of Cell, Row) should not be changed during the optimized access, no new Cell/Row objects should be created either(such as by Item).
CellDisplay100086Apply possible optimization for getting display-related results of cells(DisplayStringValue, GetStyle, GetDisplayStyle, etc.). Cells data and style-related objects(Cell/Row/Column styles, column width, etc.) should not be changed during the optimized access.
GetFormula200000Apply possible optimization for getting formulas. All data and settings which may affect the formula expression(Worksheet’s name, Name’s text, table’s column, etc.) should not be changed during the optimized access.
SetFormula400000Apply possible optimization for setting formulas. All data and settings which may affect the formula expression(Worksheet’s name, Name’s text, table’s column, etc.) should not be changed during the optimized access.
CalculateFormula800009Apply possible optimization for calculating formulas. Cells data should not be changed during the optimized access, none new objects(Cell, Row, etc.) should be created either(such as by Item).
ConditionalFormatting1000009Apply possible optimization for getting formatting result of conditional formattings. All data and settings which may affect the result of conditional formattings(settings of conditional formattings, dependent cell values, etc.) should not be changed during the optimized access.
Validation2000009Apply possible optimization for getting validation result. All data and settings which may affect the result of validation(settings of the validation, dependent cell values, etc.) should not be changed during the optimized access.

Remarks

For some features, accessing large dataset requires a lot of repeated and complicated operations such as search, calculation, …etc and those operations will take a lot of extra time. For common situations, all dependent data remains unchanged during the access, so some caches can be built and used to improve the access performance. For this purpose, we provide this API so that user can specify which kind of data access needs to be optimized by possible caching mechanism. Please note, for different options, different data set may be required to be “read-only”. And performance of accessing data depends on many aspects, the use of caching mechanism does not guarantee that performance will be improved. For some situations, such as the dataset to be accessed is small, using cache may cause even more time because caching itself also needs certain extra time.

Examples

[C#]

namespace Demos
{
    using Aspose.Cells;
    using System;

    public class AccessCacheOptionsDemo
    {
        public static void AccessCacheOptionsExample()
        {
            // Create a new workbook
            Workbook workbook = new Workbook();
            Worksheet worksheet = workbook.Worksheets[0];

            // Start access cache with specific options
            workbook.StartAccessCache(AccessCacheOptions.PositionAndSize | AccessCacheOptions.CellsData);

            // Perform some operations that benefit from caching
            for (int i = 0; i < 10; i++)
            {
                for (int j = 0; j < 10; j++)
                {
                    worksheet.Cells[i, j].PutValue(i + j);
                }
            }

            // Close access cache
            workbook.CloseAccessCache(AccessCacheOptions.PositionAndSize | AccessCacheOptions.CellsData);

            // Save the workbook
            workbook.Save("AccessCacheOptionsExample.xlsx");
        }
    }
}

See Also