Skip to main content

Service

Generic + Useful IService base class

Assembly: ServiceStack.dll​
View Source​
Declaration
public class Service : IService, IServiceBase, IRequiresRequest, IResolver, IDisposable, IServiceFilters, IServiceBeforeFilter, IServiceAfterFilter, IServiceErrorFilter

Properties​

GlobalResolver​

View Source​
Declaration
public static IResolver GlobalResolver { get; set; }

Request​

View Source​
Declaration
public IRequest Request { get; set; }

Response​

View Source​
Declaration
protected virtual IResponse Response { get; }

Cache​

View Source​
Declaration
public virtual ICacheClient Cache { get; }

CacheAsync​

View Source​
Declaration
public virtual ICacheClientAsync CacheAsync { get; }

LocalCache​

Returns ServiceStack.Caching.MemoryCacheClient. cache is only persisted for this running app instance.

View Source​
Declaration
public virtual MemoryCacheClient LocalCache { get; }

Db​

View Source​
Declaration
public virtual IDbConnection Db { get; }

Redis​

View Source​
Declaration
public virtual IRedisClient Redis { get; }

MessageProducer​

View Source​
Declaration
public virtual IMessageProducer MessageProducer { get; }

SessionFactory​

View Source​
Declaration
public virtual ISessionFactory SessionFactory { get; }

AuthRepository​

View Source​
Declaration
public virtual IAuthRepository AuthRepository { get; }

AuthRepositoryAsync​

View Source​
Declaration
public virtual IAuthRepositoryAsync AuthRepositoryAsync { get; }

Gateway​

View Source​
Declaration
public virtual IServiceGateway Gateway { get; }

VirtualFileSources​

Cascading collection of virtual file sources, inc. Embedded Resources, File System, In Memory, S3

View Source​
Declaration
public IVirtualPathProvider VirtualFileSources { get; }

VirtualFiles​

Read/Write Virtual FileSystem. Defaults to FileSystemVirtualPathProvider

View Source​
Declaration
public IVirtualFiles VirtualFiles { get; }

SessionBag​

View Source​
Declaration
public virtual ISession SessionBag { get; }

SessionBagAsync​

View Source​
Declaration
public virtual ISessionAsync SessionBagAsync { get; }

IsAuthenticated​

If user found in session for this request is authenticated.

View Source​
Declaration
public virtual bool IsAuthenticated { get; }

Methods​

GetResolver()​

View Source​
Declaration
public virtual IResolver GetResolver()
Returns​

ServiceStack.Configuration.IResolver

SetResolver(IResolver)​

View Source​
Declaration
public virtual Service SetResolver(IResolver resolver)
Returns​

ServiceStack.Service

Parameters​
TypeName
ServiceStack.Configuration.IResolverresolver

TryResolve<T>()​

View Source​
Declaration
public virtual T TryResolve<T>()
Returns​

<T>

Type Parameters​
  • T

GetPlugin<T>()​

View Source​
Declaration
public T GetPlugin<T>()
where T : class, IPlugin
Returns​

<T>

Type Parameters​
  • T

AssertPlugin<T>()​

View Source​
Declaration
public T AssertPlugin<T>()
where T : class, IPlugin
Returns​

<T>

Type Parameters​
  • T

ResolveService<T>()​

View Source​
Declaration
public virtual T ResolveService<T>()
Returns​

<T>

Type Parameters​
  • T

OpenDbConnection(String)​

View Source​
Declaration
public virtual IDbConnection OpenDbConnection(string namedConnection)
Returns​

System.Data.IDbConnection

Parameters​
TypeName
System.StringnamedConnection

GetRedisAsync()​

View Source​
Declaration
public virtual ValueTask<IRedisClientAsync> GetRedisAsync()
Returns​

ValueTask<ServiceStack.Redis.IRedisClientAsync>

GetSession(Boolean)​

View Source​
Declaration
public virtual IAuthSession GetSession(bool reload = false)
Returns​

ServiceStack.Auth.IAuthSession

Parameters​
TypeName
System.Booleanreload

GetSessionAsync(Boolean, CancellationToken)​

View Source​
Declaration
public virtual Task<IAuthSession> GetSessionAsync(bool reload = false, CancellationToken token = default(CancellationToken))
Returns​

System.Threading.Tasks.Task<ServiceStack.Auth.IAuthSession>

Parameters​
TypeName
System.Booleanreload
System.Threading.CancellationTokentoken

SessionAs<TUserSession>()​

Typed UserSession

View Source​
Declaration
protected virtual TUserSession SessionAs<TUserSession>()
Returns​

<TUserSession>

Type Parameters​
  • TUserSession

SessionAsAsync<TUserSession>()​

Typed UserSession

View Source​
Declaration
protected virtual async Task<TUserSession> SessionAsAsync<TUserSession>()
Returns​

System.Threading.Tasks.Task<<TUserSession>>

Type Parameters​
  • TUserSession

PublishMessage<T>(T)​

Publish a MQ message over the ServiceStack.Messaging.IMessageProducer implementation.

View Source​
Declaration
public virtual void PublishMessage<T>(T message)
Parameters​
TypeName
<T>message
Type Parameters​
  • T

Dispose()​

Disposes all created disposable properties of this service and executes disposing of all request System.IDisposables (warning, manually triggering this might lead to unwanted disposing of all request related objects and services.)

View Source​
Declaration
public virtual void Dispose()

OnBeforeExecute(Object)​

View Source​
Declaration
public virtual void OnBeforeExecute(object requestDto)
Parameters​
TypeName
System.ObjectrequestDto

OnAfterExecute(Object)​

View Source​
Declaration
public virtual object OnAfterExecute(object response)
Returns​

System.Object

Parameters​
TypeName
System.Objectresponse

OnExceptionAsync(Object, Exception)​

View Source​
Declaration
public virtual Task<object> OnExceptionAsync(object requestDto, Exception ex)
Returns​

System.Threading.Tasks.Task<System.Object>

Parameters​
TypeName
System.ObjectrequestDto
System.Exceptionex

DisposeAsync()​

View Source​
Declaration
public async ValueTask DisposeAsync()
Returns​

ValueTask

Implements​