Skip to content

Feature Requests

Feature, docs and use-case samples requests for ServiceStack. If you can, focus on the end-user benefit / use-case, rather than the technical details so we can focus on the end-goal and free us to work on how best to achieve it. Features can also include supporting content, e.g. a starter project on how to use ServiceStack with another product (e.g. SS + SharePoint).

133 results found

  1. Add MQ Server support for Azure Service Bus

    Add a MQ Server for Azure Service Bus that implements ServiceStack's Messaging API: https://github.com/ServiceStack/ServiceStack/wiki/Messaging

    166 votes
    Vote

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
    You have left! (?) (thinking…)
    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  2. GZip/Deflate on PCL clients

    Support http compression on clients (Xamarin/sl5) with Microsoft Compression BCL library

    20 votes
    Vote

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
    You have left! (?) (thinking…)
    1 comment  ·  Admin →
    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  3. AsyncRequestFilters

    We are creating a api that uses authorization attribute request filter in all paths(except login, of course). The attribute request for authorization to another system. Because request filters are sync the request is blocked and waiting for response at this point. A solution can be that request filters can returns a Task. Something like this:

    public override Task ProcessRequestAsync(IRequest httpReq, IResponse httpRes, string operationName){

                .....
    
    
                return Task.Factory.ContinueWhenAll(appHost.ApplyAsyncRequestFilters(httpReq, httpRes, request),
                    tasks => httpRes.IsClosed ? null : GetResponse(httpReq, request))
                    .ContinueWith(tResponse => HandleResponse(tResponse.Result, response =>
                    {
                        if (appHost.ApplyResponseFilters(httpReq, httpRes, response))
                            return null;
    
                        if (responseContentType.Contains("jsv") && !string.IsNullOrEmpty(httpReq.QueryString["debug"]))
                            return WriteDebugResponse(httpRes, response);
    
                        if (doJsonp && !(response
    1 vote
    Vote

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
    You have left! (?) (thinking…)
    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  4. Add message-level encryption

    Add the ability to specify message-level encryption on all client/server requests. Allow custom selection of encryption techniques (RSA, AES, etc.) for each direction, and the initialization vectors. Server-side I can see doing this via plug-ins and / or attributes.

    Create a subset of client libraries that handle encryption, perhaps using function pointers to encrypt / decrypt.

    Its been suggested previously by Demois on different forums.

    http://stackoverflow.com/questions/16098839/encrypting-messages-over-servicestack

    http://www.linkedin.com/groups/Service-Stack-versus-ASP-NET-1779887.S.107976247

    22 votes
    Vote

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
    You have left! (?) (thinking…)
    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  5. Async CredentialsAuthProvider

    An AsyncCredentialsAuthProvider would allow us to authenticate users asynchronously (query a database, calculate hashes, etc). Right now when extending the CredentialsAuthProvider, we are limited to do everything synchronously in the TryAuthenticate method which can lead to thread starvation.

    13 votes
    Vote

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
    You have left! (?) (thinking…)
    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  6. An example of a servicestack service supporting oAuth 2.0 authorization

    Although oAuth 2.0 is supported by ServiceStack with its AuthN providers, the assumption the current model makes is that clients wishing to access the service will first authenticate through the SS service (by calling the Auth endpoint). This AuthN then caches the users identity in the session of the SS service, and uses it to verify AuthN for subsequent calls. AuthZ is then provided with the users identity fetched from session cache.

    However, in more distributed models AuthN may be handled outside of the SS service, by other services, perhaps from the client directly and users identity stored elsewhere. But…

    12 votes
    Vote

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
    You have left! (?) (thinking…)
    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  7. Add MQ Server Support for Amazon SQS

    Add a MQ Server for Amazon SQS that implements ServiceStack's Messaging API: https://github.com/ServiceStack/ServiceStack/wiki/Messaging

    8 votes
    Vote

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
    You have left! (?) (thinking…)
    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  8. Alternative to WCF Duplex Communications

    I'd like to see an alternative to WCF Duplex Communications.

    This is somewhat related to http://servicestack.uservoice.com/forums/176786-feature-requests/suggestions/4458942-add-fast-tcp-endpoint (Add fast TCP endpoint), as the duplex comms should use the same connection.

    We use this for "playing nice" with firewalls (make connection out, poll in on same connection).

    16 votes
    Vote

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
    You have left! (?) (thinking…)
    1 comment  ·  Admin →
    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  9. OrmLiteWriteConnectionExtensions.Save should populate GUIDs

    The Save method will populate the inserted PK value if the PK is an integer with [AutoIncrement].

    It would be useful to also have this method use the database's internal GUID generator (which creates sequential GUIDs) and thus populate back into the object a GUID generated in the db.

    By default, database's will create a clustered index on the PK field, if the GUIDs are not sequential and the column has a clustered index on it, then performance will suffer.

    9 votes
    Vote

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
    You have left! (?) (thinking…)
    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  10. Add an overload of PostFileWithRequest which accepts progress callback

    PostFileWithRequest works great, but user experience isn't great when this method is used to post large files (20+MB or even smaller files over a slow connection) to the server because there's no callback for progress notification.

    Additionally, this method isn't async in SL5 builds, but we can work around this. We can't work around missing progress callback though.

    Looking at the implementation of this method, this should be fairly easy to do. I will most likely submit a pull request with the implementation over the weekend.

    1 vote
    Vote

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
    You have left! (?) (thinking…)
    completed  ·  5 comments  ·  Admin →
    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  11. Would love a SQL Server Cache Client

    We're an all MSFT shop, not much opportunity to use Memcache or Redis. A SQL Server Cache Client would be very useful.

    1 vote
    Vote

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
    You have left! (?) (thinking…)
    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  12. Allow OrmLite to store complex blobs as JSON

    Change how OrmLite stores complex type properties so they can be stored in formats other than JSV like JSON.

    56 votes
    Vote

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
    You have left! (?) (thinking…)
    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  13. Portable Class Library for Xamarin Clients - Xamarin Component Store

    Xamarin support IOS/Android/Windows Store/Windows Phone. A universal Service Stack client written using PCL would simplify code reuse. The code could be packaged up into a Xamarin Component Store download if necessary. Or be used in conjunction with MvvmCross for use in MVVM style coding and/or unit testing.

    35 votes
    Vote

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
    You have left! (?) (thinking…)
    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  14. Add ETag / If-None-Match support to enable client-side caching

    This would be very nice to have, in both the ServiceStack client AND server. The server part would be preferred, obviously :)

    108 votes
    Vote

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
    You have left! (?) (thinking…)
    1 comment  ·  Admin →
    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)

    ServiceStack’s HTTP Caching story has been greatly improved in v4.0.56 which transparently improves the behavior of existing ToOptimized Cached Responses, provides a typed API to to opt-in to HTTP Client features, introduces a simpler declarative API for enabling both Server and Client Caching of Services and also includes Cache-aware clients that are able to improve the performance and robustness of all existing .NET Service Clients – functionality that’s especially valuable to bandwidth-constrained Xamarin.iOS / Xamarin.Android clients offering improved performance and greater resilience.

    For more details please refer to the v4.0.56 Release Notes: https://github.com/ServiceStack/ServiceStack/blob/master/docs/2016/v4.0.56.md#http-caching

  15. Enhance OrmLite with common data usage patterns

    Add better support for Joins and fetching related records.

    100 votes
    Vote

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
    You have left! (?) (thinking…)
    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)

    Support for AutoQuery has been added in v4.0.23 which enables instant querying support on RDBMS tables behind clean self-describing APIs, full docs for AutoQuery is available at:
    https://github.com/ServiceStack/ServiceStack/wiki/Auto-Query

    Support for joins have been added to typed SqlExpressions in v4.0.22:
    https://github.com/ServiceStack/ServiceStack/blob/master/release-notes.md#typed-sql-expressions-now-support-joins


    Going to mark off this broad feature as completed as we’ve just completed what we set out to do for this. Please open up new feature requests for more specific features.

    Thanks!

  16. Add more MQ options

    Add more MQ Adapters, e.g: Rabbit MQ, Amazon SQS, Azure Service Bus, ZeroMQ/nanomsg.

    70 votes
    Vote

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
    You have left! (?) (thinking…)
    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  17. 26 votes
    Vote

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
    You have left! (?) (thinking…)
    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  18. Research optimal deployment strategies for hosting on Mono/Linux

    Research optimal deployment strategies for hosting ServiceStack on Linux (e.g. nginx FastCGI/ nginx + reverse proxy / self-hosting inside linux daemon) with the best performance, that best supports CI deployment with no downtime, auto restart/recovery when Mono process dies.

    105 votes
    Vote

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
    You have left! (?) (thinking…)
    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)

    We’ve published our recommended Setup for hosting ASP .NET sites on Linux and Mono is to use nginx/HyperFastCgi. We’ve published a step-by-step guide going through creating an Ubuntu VM from scratch complete with deploy / install / conf / init scripts at [mono-server-config]1.

    As well as a guide for hosting ServiceStack with Mono on Docker at: https://github.com/ServiceStackApps/mono-docker-config

    Although hosting on Mono is only a Stop Gap as the future and supported option for running .NET on Linux is CoreCLR which will be a priority for us to look at supporting as soon as it’s released. You can vote for the feature request to keep updated on progress: https://servicestack.uservoice.com/forums/176786-feature-requests/suggestions/10286952-support-dnx

  19. 74 votes
    Vote

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
    You have left! (?) (thinking…)
    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  20. Server-side Async support

    Change ServiceStack to be based on IHttpAsyncHandler so services have the option to be non-blocking by returning a Task<T>.

    75 votes
    Vote

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
    You have left! (?) (thinking…)
    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  • Don't see your idea?

Feature Requests

Categories

Feedback and Knowledge Base