Skip to content

PrefScope

PrefScope is the scope model that every clsPreferences lookup and mutator is parameterized on. It has no behavior of its own; its three members determine whether a preference is bound to a page (PageLevel) or shares a single, page-less storage slot (AppLevel, WebLevel), which in turn drives how clsPreferences derives the composite (application, page) key used to locate a Preference record.

Purpose

  • Distinguish page-scoped preferences from application- and web-scoped preferences so that clsPreferences.PageKey can resolve the correct storage slot for a given operation (BR-PRES-008).

Context

  • Namespace: SAIF.Presentation
  • Assembly/package: SAIF.Presentation (packaged into SAIF.BOF.Presentation.Web.Infragistics111.nuspec as SAIF.Presentation.Web.Infragistics111.dll)

Public members

Member Signature Purpose
AppLevel PrefScope.AppLevel Selects application-wide scope; PageKey resolves to an empty string for this member, so all application-level preferences for a given application share one storage slot.
PageLevel PrefScope.PageLevel Selects page-specific scope; PageKey resolves to the derived page name, so each page gets its own preference record within the application.
WebLevel PrefScope.WebLevel Selects web-wide scope; like AppLevel, PageKey resolves to an empty string, so WebLevel and AppLevel preferences currently occupy the same storage slot within an application.*

Behavioral notes

  • AppLevel and WebLevel are functionally indistinguishable in the current implementation — both resolve to an empty page key and therefore address the same underlying Preference record for a given application.*

Constraints and usage notes

  • Callers that need page-specific preference isolation must pass PrefScope.PageLevel explicitly, or rely on the default scope used by the single-argument Item and Add overloads (which is PageLevel).

Note: Statements marked with * were inferred from code structure, naming conventions, or contextual evidence where direct confirmation was not available in source artifacts.

Sources

  • SAIF.Presentation/clsPreferences.vb