SAIF.Framework.Common API reference¶
This page lists all public types exposed by SAIF.Framework.Common. Each type links to its full API reference page.
Types¶
| Type | Kind | Namespace | Purpose |
|---|---|---|---|
| Enforce | Class | SAIF |
Static fail-fast guard class used to validate method arguments and internal state before use; the guard layer that IEnumerableExtensions, DictionaryExtensions, and other members throughout the library call at the top of their bodies. |
| DateRange | Class | SAIF.Common |
Concrete, mutable begin/end date-pair implementation of IDateRange, with value-equality semantics, string round-tripping, and a shared empty-range singleton. |
| NullableDateRange | Class | SAIF.Common |
Date range whose end date may be open-ended (null), used to classify overlap relationships between two such ranges via DateRangeOverlapResult. |
| DateMaker | Class | SAIF.Common |
Static helpers for building and formatting DateTime values from EDI-style date/time string fragments used by trading-partner file formats. |
| Julian | Class | SAIF.Common |
Static helpers for validating and converting between Julian-format date strings (year + day-of-year) and DateTime, matching an EDI/legacy Julian date convention. |
| Serializer | Class | SAIF.Common |
Static JSON/XML serialization helpers built on DataContractJsonSerializer and XmlSerializer, used to persist and reload plain data objects. |
| Reflector | Class | SAIF.Common |
Single-method reflection helper that enumerates the public properties of a type, used by mapping/binding code that needs a type's property set without hand-written reflection calls. |
| SequenceGenerator |
Class | SAIF.Common |
Abstract base for in-memory monotonic sequence generators; concrete subclasses (Sequence, LongSequence) supply the increment logic for a specific numeric type. |
| Sequence | Class | SAIF.Common |
In-memory int sequence generator; not thread-safe, so concurrent callers can observe or produce duplicate values.* |
| LongSequence | Class | SAIF.Common |
In-memory long sequence generator for value ranges that exceed int capacity; not thread-safe.* |
| EntityBase |
Class | SAIF.Common |
Marker base class (no members) that identifies a type as a data entity by implementing IDataEntity; consuming libraries use it as a common generic constraint anchor. |
| ValidationResult | Class | SAIF.Common |
Serializable, mutable implementation of IValidationResult that aggregates validation failures and free-text messages and derives its IsValid flag from whether any failures are present. |
| ValidationFailure | Class | SAIF.Common |
Implementation of IValidationFailure describing one field-level validation error: which property failed, the attempted value, and the message to surface. |
| SaifValidationException | Class | SAIF.Common |
Exception thrown to signal a validation failure, optionally carrying a full IValidationResult so callers can surface all failures rather than a single message. (BR-044) |
| IDateRange | Interface | SAIF.Common |
Contract for a begin/end date pair, implemented by DateRange and consumed throughout DateRangeExtensions. |
| IDateRangeList | Interface | SAIF.Common |
Contract for a type that can project itself into a sequence of IDateRange values, used by DateRangeExtensions overlap/contiguity checks. |
| IValidationResult | Interface | SAIF.Common |
Contract for an aggregate validation outcome, implemented by ValidationResult and referenced by SaifValidationException. |
| IValidationFailure | Interface | SAIF.Common |
Contract for a single field-level validation error, implemented by ValidationFailure. |
| ISequenceGenerator |
Interface | SAIF.Common |
Contract for a monotonic value generator, implemented by SequenceGenerator<T> and its subclasses Sequence/LongSequence. |
| IDataEntity | Interface | SAIF.Common |
Marker interface (no members) identifying a type as a data entity; implemented by EntityBase<TEntity> for use as a generic constraint anchor by consuming libraries. |
| ContiguousOptions | Enum | SAIF.Common |
Controls how strictly adjacency is judged when testing whether a sequence of date ranges is contiguous. (BR-007) |
| IncludeComparisons | Enum | SAIF.Common |
Controls which boundary of a comparison range is treated as inclusive, used by IComparableExtensions.IsBetween. (BR-036) |
| OverlappingDateOptions | Enum | SAIF.Common |
Controls whether two date ranges sharing an identical boundary date count as overlapping. (BR-004) |
| ContextException | Class | SAIF.Common.Classes |
Abstract base for exceptions that signal a UI/view context problem (missing, invalid, disabled), carrying the target view name and an optional model for the handler to act on. |
| NoContextException | Class | SAIF.Common.Classes |
Signals that no context/view could be resolved at all; defaults TargetView to "NoContext". (BR-048) |
| InvalidContextException | Class | SAIF.Common.Classes |
Signals that the resolved context/view is invalid for the current request; defaults TargetView to "InvalidContext". (BR-048) |
| InvalidContextForUserException | Class | SAIF.Common.Classes |
Signals that the resolved context/view is invalid specifically for the current user; defaults TargetView to "InvalidContextForUser". (BR-048) |
| DisabledViewException | Class | SAIF.Common.Classes |
Signals that the target view exists but is currently disabled; defaults TargetView to "DisabledView" and can carry a model describing the disabled state. (BR-048) |
| DateRangeOverlapResult | Enum | SAIF.Common.Enums |
Classifies how two NullableDateRange values relate to one another — the full set of directional overlap states returned by NullableDateRange.GetOverlapState. (BR-006) |
| LogType | Enum | SAIF.Common.Enums |
Identifies which of a console application's fixed log slots a message should be routed to, used by IConsoleLogService/ILogWriter. (BR-092) |
| ILogWriter | Interface | SAIF.Common.Interfaces |
Contract for a single log destination (one file), covering timestamp formatting and buffered writes. No implementation ships in this library. (BR-091, BR-094)* |
| IConsoleLogService | Interface | SAIF.Common.Interfaces |
Contract for a multi-log logging façade that registers named/typed log files and routes writes and exceptions to them. No implementation ships in this library. (BR-091, BR-094)* |
| StringUtilities | Class | SAIF.Common.Utility |
Static character-class filters that extract or strip specific categories of characters (digits, letters, punctuation, symbols, control characters, whitespace) from a string. (BR-075) |
| BooleanExtensions | Class | SAIF.Common.Extensions |
Renders a bool as one of several fixed flag-string conventions used by file/UI formats. (BR-073) |
| ByteExtensions | Class | SAIF.Common.Extensions |
Byte-array helpers for locating a known signature (e.g. a PDF header), stripping a leading header, and hashing a payload. (BR-053, BR-054, BR-056) |
| DateExtensions | Class | SAIF.Common.Extensions |
Convenience predicates and formatters for DateTime/DateTime? values: current/future/past classification, min/max detection, short-date rendering, and epoch conversion. |
| DateRangeExtensions | Class | SAIF.Common.Extensions |
The library's date-range algorithm surface: equality, open-endedness, overlap and contiguity testing, and range filtering, operating on IDateRange/IEnumerable<IDateRange>. (BR-001, BR-003, BR-004, BR-005) through BR-011, BR-034, BR-036, BR-037 |
| DictionaryExtensions | Class | SAIF.Common.Extensions |
Dictionary merge and safe-read/upsert helpers layered on Enforce guards. (BR-082, BR-083, BR-084) |
| DotNet40Extensions | Class | SAIF.Common.Extensions |
JSON load/deserialize helpers for string, mirroring a subset of Serializer's functionality for call sites that only have a JSON string/path and not a generic serializer reference. |
| ExceptionExtensions | Class | SAIF.Common.Extensions |
Formats an exception and its full InnerException chain for display or for a delimited application error log. (BR-049) through BR-052 |
| ExpressionExtensions | Class | SAIF.Common.Extensions |
Strongly-typed property access via expression trees: resolving a PropertyInfo from a lambda and setting a property's value without reflecting by string name. (BR-061) through BR-064 |
| FileExtensions | Class | SAIF.Common.Extensions |
Materializes a Stream into an in-memory byte array via MemoryStream. (BR-089) |
| GenericExtensions | Class | SAIF.Common.Extensions |
Generic-object helpers: throw-if-null with a custom exception type, a reference/value-aware null test, and JSON/XML string conversion shortcuts. (BR-058) |
| IComparableExtensions | Class | SAIF.Common.Extensions |
Range-membership test for any IComparable value, with boundary-inclusivity controlled by IncludeComparisons. (BR-036) |
| IEnumerableExtensions | Class | SAIF.Common.Extensions |
General-purpose LINQ gap-fillers: eager iteration, string-joining, membership testing, trailing-item selection, keyed distinct, and full/left outer joins. (BR-039, BR-085) through BR-088 |
| NumericExtensions | Class | SAIF.Common.Extensions |
Numeric string testing and decimal precision helpers. (BR-079) through BR-081 |
| SecurityPrincipalExtensions | Class | SAIF.Common.Extensions |
Extracts the account name and domain portions from an IIdentity's Name (typically a Windows identity in DOMAIN\user form). (BR-071) |
| StringExtensions | Class | SAIF.Common.Extensions |
The library's largest extension surface: null/blank testing, boolean parsing, slicing/truncation, case conversion (including delegation to TitleCase), Unicode normalization, numeric-character testing, decimal conversion, and string wrapping. (BR-072, BR-074, BR-076) through BR-078 |
| UriExtensions | Class | SAIF.Common.Extensions |
Derives ASP.NET MVC-style application/controller/action/page name fragments from a request Uri's path segments. (BR-068, BR-069, BR-070) |
| IncludeComparisons | Enum | SAIF.Common.Extensions |
Duplicate of SAIF.Common.IncludeComparisons, declared separately in the SAIF.Common.Extensions namespace; controls which boundary of a comparison range is treated as inclusive. (BR-036) |
| DateRangeExtensions.OverlappingOptions | Enum | SAIF.Common.Extensions |
Nested enum controlling whether two date ranges sharing an identical boundary date count as overlapping, used by DateRangeExtensions.IsOverlapping. (BR-004) |
| DateRangeExtensions.ContiguousOptions | Enum | SAIF.Common.Extensions |
Nested enum controlling how strictly adjacency is judged when testing whether a sequence of date ranges is contiguous, used by DateRangeExtensions.IsContiguous. (BR-007) |
Note: Statements marked with * were inferred from code structure, naming conventions, or contextual evidence where direct confirmation was not available in source artifacts.
Sources¶
Common/SAIF.Common/Interfaces/IDateRange.csCommon/SAIF.Common/Interfaces/IValidationResult.csCommon/SAIF.Common/Interfaces/IValidationFailure.csCommon/SAIF.Common/Interfaces/ISequenceGenerator.csCommon/SAIF.Common/Interfaces/IDataEntity.csCommon/SAIF.Common/Interfaces/ILogWriter.csCommon/SAIF.Common/Interfaces/IConsoleLogService.csCommon/SAIF.Common/Classes/Enforce.csCommon/SAIF.Common/Classes/DateRange.csCommon/SAIF.Common/Classes/NullableDateRange.csCommon/SAIF.Common/Classes/DateMaker.csCommon/SAIF.Common/Classes/Julian.csCommon/SAIF.Common/Classes/Serializer.csCommon/SAIF.Common/Classes/Reflector.csCommon/SAIF.Common/Classes/SequenceGenerator.csCommon/SAIF.Common/Classes/Sequence.csCommon/SAIF.Common/Classes/LongSequence.csCommon/SAIF.Common/Classes/EntityBase.csCommon/SAIF.Common/Classes/ValidationResult.csCommon/SAIF.Common/Classes/ValidationFailure.csCommon/SAIF.Common/Classes/SaifValidationException.csCommon/SAIF.Common/Classes/ContextException.csCommon/SAIF.Common/Utility/StringUtilities.csCommon/SAIF.Common/Utility/TitleCase.csCommon/SAIF.Common/Enums/Enums.csCommon/SAIF.Common/Enums/DateRangeOverlapResult.csCommon/SAIF.Common/Enums/LogType.csCommon/SAIF.Common/Extensions/BooleanExtensions.csCommon/SAIF.Common/Extensions/ByteExtensions.csCommon/SAIF.Common/Extensions/DateExtensions.csCommon/SAIF.Common/Extensions/DateRangeExtensions.csCommon/SAIF.Common/Extensions/DictionaryExtensions.csCommon/SAIF.Common/Extensions/DotNet40Extensions.csCommon/SAIF.Common/Extensions/ExceptionExtensions.csCommon/SAIF.Common/Extensions/ExpressionExtensions.csCommon/SAIF.Common/Extensions/FileExtensions.csCommon/SAIF.Common/Extensions/GenericExtensions.csCommon/SAIF.Common/Extensions/IComparableExtensions.csCommon/SAIF.Common/Extensions/IEnumerableExtensions.csCommon/SAIF.Common/Extensions/NumericExtensions.csCommon/SAIF.Common/Extensions/SecurityPrincipalExtensions.csCommon/SAIF.Common/Extensions/StringExtensions.csCommon/SAIF.Common/Extensions/UriExtensions.csCommon/SAIF.Common/Properties/AssemblyInfo.cs