Serenity.Net.Services assembly

Serenity namespace

signature name description
enum CaptureOperationType Contains capture logging operation types
static class PrefixHelper Contains static methods to determine prefix length for a list E.g. to find the prefix that all the columns of a table have

Serenity.ComponentModel namespace

signature name description
class AddBehaviorAttribute Attaches an explicit behavior

Serenity.Data namespace

signature name description
class CaptureLogAttribute Enables capture logging for a row type
class CriteriaFieldExpressionReplacer Converts field names in a criteria to their corresponding SQL field expressions.
static class DisplayOrderHelper A static class with helper functions to update display orders of all records or groups of records in a table.
interface ICaptureLogHandler Capture logging handler abstraction
interface ICaptureLogRow Interface for capture logging row types
interface ILocalizationRow Interface for rows with a CultureId field
class LocalizationRowAttribute Maps a row to its localization row
static class ServiceRequestExtensions Contains static extension methods for DbField and Meta objects.

Serenity.Extensions.DependencyInjection namespace

signature name description
static class ServiceCollectionExtensions Contains dependency injection extensions for IServiceCollection

Serenity.IO namespace

signature name description
class CommandLineTools Contains functions related to command line

Serenity.PropertyGrid namespace

signature name description
class LocalizablePropertyProcessor Property processor for handling localizable properties

Serenity.Reporting namespace

signature name description
abstract class BaseCellDecorator Base class for cell decorators, implementing all ICellDecorator members.
abstract class BaseReport Base class for reports that implement IReport and optionally IReportWithAdditionalData
class CellDecoratorAttribute Attribute used to set the ICellDecorator type for a property.
class EnumDecorator A decorator used to export enum name instead of the enum integer value.
class GenerateCsvRequest Request model for a CSV exporter.
class GenerateExcelFileRequest Request model for an Excel exporter.
class HtmlReportRenderUrl Response type for IHtmlReportRenderUrlBuilder.GetRenderUrl method
class HtmlToPdfOptions HTML to PDF options
interface ICellDecorator Cell decorator interface mainly used for Excel export styling.
interface ICustomFileName Interface to customize the output file name, e.g. name of the XLSX or PDF file outputted by reports. By default, reports has output file name of format "_yyyyMMdd_HHmmss.ext".
interface ICustomizeHtmlToPdf An interface reports can implement to customize HTML to PDF converter settings.
interface ICustomTitle Interface to customize the report title.
interface IDataOnlyReport Interface for reports that only contain data, e.g. no design. These are usually Excel/CSV etc. export type of reports.
interface IDataReportExcelRenderer Excel exporter interface for data only reports. This is usually implemented by EPPlus based exporter. The interface abstracts that dependency.
interface IExcelExporter Interface for Excel exporters
interface IExternalReport This interface marks a report class as a report that should open an external URL, e.g. an SSRS report url, or any arbitrary site The URL should be returned from GetData() method of report class.
interface IHtmlReportCallbackUrlBuilder Abstraction for HTML report callback url builder
interface IHtmlReportPdfRenderer PDF exporter interface for HTML reports.
interface IHtmlReportRenderUrlBuilder Interface abstraction to get HTML report render URL
interface IHtmlToPdfConverter Abstraction for service that converts HTML to PDF
interface IHtmlToPdfOptions Set of options for HTML to PDF converter (WKHTMLToPdf)
interface IReport The basic interface for all reports
interface IReportFactory Abstraction for the a report factory that creates a report by its key and populates it with the JSON options passed
interface IReportRegistry Abstraction for the registry which holds and allows querying list of available reports by their keys and categories.
interface IReportRenderer Abstraction for the a report render that renders a report
interface IReportRetrieveHandler Abstraction for report info retriever
interface IReportWithAdditionalData The interface for reports that return some type of additional data. For example, the system settings. This can be considered as additional datasets.
interface IWKHtmlToPdfConverter WKHTMLToPdf converter interface
class ReportAttribute Marks a class as Report
class ReportColumn Information about a report column
static class ReportColumnConverter Contains methods to extract ReportColumns from other types.
class ReportDesignAttribute The attribute used to determine the location of the report design which is usually a CSHTML file.
static class ReportFactoryExtensions Contains extension methods for IReportFactory
class ReportRegistry Default report registry implementation
class ReportRenderOptions Render request a report
class ReportRenderResult Render result for a report
class ReportRetrieveRequest Request model to retrieve a report by its key. This only returns the metadata, e.g. parameters of report etc.
class ReportRetrieveResponse Response model for a report retrieve request.
class TabularDataReport An implementation of a data only report which is used mainly for Excel export.
class UseWKHtmlToPdfAttribute Marks a report to determine if it should use WKHTML instead of another converter, e.g. Puppeeteer etc. (only if configured in service provider).

Serenity.Services namespace

signature name description
abstract class BaseDeleteBehavior Base class for types implementing IDeleteBehavior
abstract class BaseListBehavior Base class for behaviors implementing IListBehavior
class BaseRepository An base class that can be used for repositories (obsolete, BaseRequestHandler) that accept a IRequestContext instance.
abstract class BaseRequestHandler An abstract class that can be used as base for request handlers that accept a IRequestContext instance.
abstract class BaseRetrieveBehavior Base class for behaviors implementing IRetrieveBehavior
abstract class BaseSaveBehavior Base class for behaviors implementing ISaveBehavior
abstract class BaseSaveDeleteBehavior Base class for behaviors implementing save and delete behavior interfaces
abstract class BaseUndeleteBehavior Base class for types implementing IUndeleteBehavior
static class BehaviorProviderExtensions Extension methods for behavior provider
class CaptureLogBehavior Capture log behavior
class CaptureLogConsts Contains constants related to the capture logging
static class DataValidation Contains validation related helper methods for service handlers
class DefaultBehaviorFactory Default IBehaviorFactory implementation
class DefaultBehaviorProvider Default implementation for IBehaviorProvider
class DefaultHandlerActivator Default implementation of the IHandlerActivator
class DefaultHandlerAttribute Specifies that the class this attribute attached to is the default handler (list, create, delete, update etc). and should be used by some behaviors like MasterDetailRelationBehavior instead of creating a generic handler.
class DefaultHandlerFactory Default implementation for the IDefaultHandlerFactory
static class DefaultHandlerFactoryExtensions Extension methods for IDefaultHandlerFactory
class DefaultHandlerRegistry Default implentation for the IDefaultHandlerFactory
class DefaultImplicitBehaviorRegistry Default implementation for the IImplicitBehaviorRegistry
class DefaultRequestContext Default implementation for a IRequestContext
class DeleteRequest Service object for delete requests
class DeleteRequestHandler<TRow> Base generic class for delete request handlers that use DeleteRequest as the request type, and DeleteResponse as the response type.
class DeleteRequestHandler<TRow,TDeleteRequest,TDeleteResponse> Generic base class for delete request handlers
class DeleteResponse The response object returned from a delete service
class DisplayOrderFilterHelper Display order related helper methods
class GenericHandlerTypeAttribute Assigns the generic handler type (e.g. SaveRequestHandler for a handler interface (like ISaveRequestHandler)
interface IBehaviorFactory Behavior factory abstraction
interface IBehaviorProvider Interface abstraction for behavior provider which resolves list of behavior instances of a specified type, like ISaveBehavior etc.
interface ICreateHandler<TRow> Interface for create request handlers
interface ICreateHandler<TRow,TSaveRequest,TSaveResponse> Interface for create request handlers with custom request / response types.
interface IDefaultHandlerFactory Interface to get a new instace of a default request handler, given its row type and the handler interface
interface IDefaultHandlerRegistry Abstaction for the registry that cobtains default handler types.
interface IDeleteBehavior A delete behavior that can be used as a mixin within a DeleteRequestHandler lifecycle
interface IDeleteExceptionBehavior This is an extension for delete behaviors that should be called for exceptions that occur during delete. It could be useful to preview the exception and raise another exception for FK / PK database errors etc.
interface IDeleteHandler<TRow> Interface for delete request handlers that use DeleteRequest as request, and DeleteResponse as response types.
interface IDeleteHandler<TRow,TDeleteRequest,TDeleteResponse> Interface for delete request handlers with custom delete request / response types.
interface IDeleteRequestHandler Represents a DeleteRequestHandler. Is used with DeleteBehavior objects.
interface IDeleteRequestProcessor Abstraction for delete request handlers with a Process method.
interface IFieldBehavior Represents a request handler behavior that is targeted to a field.
interface IHandlerActivator Abstraction for request handler activator, that is used to create instances of an handler type.
interface IImplicitBehavior An implicit behavior is a request handler behavior (save/list/retrieve/delete etc.) which can be implicitly activated for a row type without explicitly attached to that row type.
interface IImplicitBehaviorRegistry An interface to query list of implicit behaviors registered through the dependency resolver. Implicit behaviors are automatically activated behaviors by querying via their ActivateFor method. See IImplicitBehavior
interface IIncludeExcludeColumns Abstraction for service objects containing include / exclude column sets. See ListRequest and RetrieveRequest.
interface IListBehavior A list behavior that can be used as a mixin within a ListRequestHandler lifecycle
interface IListHandler<TRow> Interface for list request handlers
interface IListHandler<TRow,TListRequest> Interface for list request handlers with a custom list request type.
interface IListHandler<TRow,TListRequest,TListResponse> Interface for list request handlers with custom list request / response types.
interface IListRequestHandler Represents a ListRequestHandler. Is used with ListBehavior objects.
interface IListRequestProcessor Abstraction for list request handlers with a Process method.
interface IListResponse The interface for list response. This is used to easily access list response members as the ListResponse class itself is generic.
interface IRequestContext A service request context abstraction containing services that are mostly used by all service handler types. This is a type similar to the HttpContext but is specialized for service handlers.
interface IRequestHandler<TRow> Marker interface for request handlers that operate on a specific entity type.
interface IRequestHandler<TRow,TRequest,TResponse> Marker interface for request handlers that operate on a specific entity type, request type and a response type.
interface IRequestHandler Marker interface for standard and custom request handlers
interface IRequestType<TRequestType> Interface to access the request type of a request handler
interface IResponseType<TResponseType> Interface to access the response type of a request handler
interface IRetrieveBehavior A retrieve behavior that can be used as a mixin within a RetrieveRequestHandler lifecycle
interface IRetrieveHandler<TRow> Interface for list request handlers
interface IRetrieveHandler<TRow,TRetrieveRequest,TRetrieveResponse> Interface for retrieve request handlers with custom retrieve request / response types.
interface IRetrieveRequestHandler Represents a RetrieveRequestHandler. Is used with RetrieveBehavior objects.
interface IRetrieveRequestProcessor Abstraction for retrieve request handlers with a Process method.
interface IRetrieveResponse Interface for a RetrieveResponse. As the RetrieveResponse itself is generic, this allows easier access to its members.
interface ISaveBehavior A save behavior that can be used as a mixin within a SaveRequestHandler lifecycle
interface ISaveExceptionBehavior This is an extension for save behaviors that should be called for exceptions that occur during save. It could be useful to preview the exception and raise another exception for FK / PK database errors etc.
interface ISaveHandler<TRow> Interface for save request handlers
interface ISaveHandler<TRow,TSaveRequest,TSaveResponse> Interface for save request handlers with custom request / response types.
interface ISaveRequest Interface for a SaveRequest. As the SaveRequest itself is generic, this allows easier access to its members.
interface ISaveRequestHandler Represents a SaveRequestHandler. Is used with SaveBehavior objects.
interface ISaveRequestProcessor Abstraction for save request handlers with a Process method.
interface IUndeleteBehavior A undelete behavior that can be used as a mixin within a UndeleteRequestHandler lifecycle
interface IUndeleteExceptionBehavior This is an extension for undelete behaviors that should be called for exceptions that occur during delete. It could be useful to preview the exception and raise another exception for FK / PK database errors etc.
interface IUndeleteHandler<TRow> Interface for undelete request handlers that use UndeleteRequest as request, and UndeleteResponse as response types.
interface IUndeleteHandler<TRow,TUndeleteRequest,TUndeleteResponse> Interface for undelete request handlers with custom undelete request / response types.
interface IUndeleteRequestHandler Represents a UndeleteRequestHandler. Is used with UndeleteBehavior objects.
interface IUndeleteRequestProcessor Abstraction for undelete request handlers with a Process method.
interface IUpdateHandler<TRow> Interface for update request handlers
interface IUpdateHandler<TRow,TSaveRequest,TSaveResponse> Interface for update request handlers with custom request / response types.
class JsonServiceClient A JSON service client implementation
class JsonSortByConverter Serialize/deserialize a SortBy object as string
class LinkingSetRelationBehavior Behavior class that handles LinkingSetRelationAttribute
class ListRequest The request model for a List service.
class ListRequestHandler<TRow> Base generic class for list request handlers that use ListRequest as the request type, and ListResponse as the response type.
class ListRequestHandler<TRow,TListRequest> Base generic class for list request handlers that use a custom list request as the request type, and ListResponse as the response type.
class ListRequestHandler<TRow,TListRequest,TListResponse> Generic base class for list request handlers
class ListResponse<T> The response model for a list service.
class LocalizationBehavior Behavior for handling localizable rows / properties
class MasterDetailRelationBehavior Behavior class that handles MasterDetailRelationAttribute
static class RequestHandlerExtensions Contains extension methods to create request / response types for a request handler instance
enum RetrieveColumnSelection The group of columns to retrieve
class RetrieveLocalizationRequest A retrieve request with localization. Don't use. Provided only for compatibility.
class RetrieveLocalizationResponse<TEntity> The service model for a localization retrieve response
class RetrieveRequest The request model for a Retrieve service
class RetrieveRequestHandler<TRow> Base generic class for retrieve request handlers that use RetrieveRequest as the request type, and RetrieveResponse as the response type.
class RetrieveRequestHandler<TRow,TRetrieveRequest,TRetrieveResponse> Generic base class for retrieve request handlers
class RetrieveResponse<T> The service response model for a Retrieve service
class SaveRequest<TEntity> The service model for a Save (Create / Update) service.
class SaveRequestHandler<TRow> Base generic class for save request handlers that use SaveRequest as the request type, and SaveResponse as the response type.
class SaveRequestHandler<TRow,TSaveRequest,TSaveResponse> Generic base class for save request handlers
enum SaveRequestType Save request type for save request processors
class SaveResponse The response model for a Save service
class SaveWithLocalizationRequest<TEntity> A save request with localization. Don't use. Provided only for compatibility.
class ServiceError The error object model returned from a service
static class ServiceHelper Contains some helper methods for service handlers
static class ServiceQueryHelper Contains static helper methods for service handler queries.
class ServiceRequest The base request object model for all service requests. Your custom request objects should all derive from this type.
class ServiceResponse The base service response object model for all service response types. Your custom response objects should derive from this class.
class SortBy A sort column. In JSON this is deserialized from strings in the format "field" or "field desc"
static class TreeOrdering Tree based sorting helper. E.g. in a tree, a node's parents should come before itself. Such an ordering is not easy in SQL so we use this helper to do ordering client side.
static class TwoLevelCacheInvalidationExtensions Contains helper methods for two level cache invalidation
class UndeleteRequest The request model for an undelete service
class UndeleteRequestHandler<TRow> Base generic class for undelete request handlers that use UndeleteRequest as the request type, and UndeleteResponse as the response type.
class UndeleteRequestHandler<TRow,TUndeleteRequest,TUndeleteResponse> Generic base class for undelete request handlers
class UndeleteResponse The response model for an undelete service
class UniqueConstraintSaveBehavior Behavior that handles UniqueConstraintAttribute
class UniqueFieldSaveBehavior Interface that handles UniqueConstraintAttribute on fields
class UpdatableExtensionBehavior Behavior that handles UpdatableExtensionAttribute
class UpdateInsertLogBehavior Behavior class that handles assignment of relevant fields for rows with IInsertLogRow and IUpdateLogRow interfaces
class UploadedFile Uploaded file item which is used by multiple upload editors to store file information in a string field as JSON array.
class ValidateParentBehavior Validation behavior for rows that have a parent record via IParentIdRow interface

Serenity.Web namespace

signature name description
class CombinedUploadStorage A combined upload storage implementation that uses two upload storage instances, while serving one of them from a sub path like "/temporary/"
class CopyTemporaryFileOptions Options for copying a temporary file to its target
class CopyTemporaryFileResult Result of the copying of a temporary file to its target
class DefaultImageProcessor Default implementation for the IImageProcessor
class DefaultUploadProcessor Default implementation for IUploadProcessor
class DefaultUploadValidator Default implementation for IUploadValidator
class DiskUploadStorage A file system based upload storage implementation
class DiskUploadStorageOptions Options for DiskUploadStorage
static class FileMetadataKeys Contains file metadata key constants
class FilesToDelete A container that stores list of file paths to delete (old files) if the upload related operation is successful. If it is not, the old files will be kept while the new files will be deleted.
static class FilesToDeleteExtensions Extension methods for FilesToDelete
class FormatFilenameOptions Options for formatting a file name
interface IDiskUploadFileSystem Extension for IFileSystem with disk upload storage specific methods.
interface IFilesToDelete Interface for a files to delete container (FilesToDelete)
interface IImageProcessor Image processor abstraction
class ImageChecker Checks stream data if valid image file and validate required conditions.
enum ImageCheckResult ImageChecker's result codes.
class ImageEncoderParams Parameters for image encoding. Currently only contains a JPEG quality parameter.
class ImageFormatInfo Information about an image format
interface IUploadAVScanner Abstraction for an upload antivirus scanner, which scans temporary uploads before getting processed
interface IUploadProcessor Abstraction for an upload processor, which handles temporary uploads
interface IUploadStorage Abstraction for an upload storage
interface IUploadValidator An upload validator abstraction for checking IUploadFileConstraints and IUploadImageContrains
enum OverwriteOption Enum that contains what to do when a file at desired path exists
class PhysicalDiskUploadFileSystem Implementation of the IDiskUploadFileSystem
class ProcessedUploadInfo Information about a processed temporary upload
class TempUploadStorage A subclass of DiskUploadStorage specialized for the temporary upload folder, allowing to purge temporary files
static class ThumbnailGenerator Static class that contains thumbnail generator methods
static class UploadFormatting Contains helper methods for upload file name formatting
static class UploadPathHelper Contains helper functions for upload paths
class UploadSettings Upload settings
static class UploadStorageExtensions Extension methods for IUploadStorage and related classes
static class UploadTexts