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).

162 results found

  1. Add ServiceStack + SharePoint example

    Create a starter template showing how to use ServiceStack + SharePoint together.

    31 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. Unions implementation for ORM Lite

    Hi

    In my application user can define multiple filters for specific type. I would like to somehow combine these queries in single one.

    SqlExpression<Notice> query1 = Db.From<Notice>(s=>s.param1 == 2);
    // ...queries are more complicated but result type is same
    SqlExpression<Notice> query2 = Db.From<Notice>(s=>s.param1 == 3 && s.param2 == 3);

    SqlExpression<Notice> unionAll = query1.UnionAll(query2);
    var result = Db.Select(unionAll);

    28 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)
  3. Better request and exception logging

    As it exists now, request logging only logs valid requests.
    Request Logging:

    It does not log the request if the request is denied for Endpoint Restriction.
    It does not log the request if the request is denied because a route could not be matched (say a parameter was missing, etc).
    It does not log valid requests that are 'in process' - ones that request has been received, but response not sent yet.

    Essentially I would like to see every request sent to the service to be logged in some fashion.

    As far as exceptions go, you have some pretty nice…

    28 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)
  4. ExcludePropertyReferences for Data Contracts

    Currently ExcludePropertyReferences is expecting DeclaringTypeName.DataContractName. Its more helpful if the type is fully qualified.

    for example ; from below Json if we want to exclude :{"Officeaddress.houseaddress.city"}; .

    Json:
    //----------------------------------------------------------------------------
    {"id":"eb26f100-3758-4a19-806b-cd5af44f88a4","data":{"lname":"Talluri","firstname":"RamaNaresh","city":"Atlanta"},"collections":{"houseaddress":[{"id":"126e057d-e91b-42ec-b40d-bdba9c831d64","data":{"city":"CAToronto"}}],"officeaddress":[{"id":"5ff48bd4-bfe2-4721-adf1-3f5cd3b5c736","data":{"city":"USAlpharetta"},"collections":{"houseaddress":[{"id":"aad21efc-2768-4518-a505-71dc8b82ad40","data":{"city":"CA_Downtown"}}]}}]}}
    //----------------------------------------------------------------------------
    Model :
    //----------------------------------------------------------------------------
    [DataContract]
    public class AddressModel : BaseModel
    {
    [DataMember(Name = "id")]
    public System.Guid Id
    {
    get;
    set;
    }

        [DataMember(Name = "data")]
        public virtual BaseAddress Data
        {
            get;
            set;
        }
    
        [DataMember(Name = "collections")]
        public virtual AddressCollection Collections
        {
            get;
            set;
        }
    }
    
    [DataContract]
    public class BaseAddress
    {
    
        [DataMember(Name = "lname")]
        public string LastName
        {
            get;
            set;
        }
        [DataMember(Name = "firstname")]
        public string FirstName
        {
            get;
            set;
    27 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. Add an LDAP Authentication Provider

    With .NET Core not initially having support for Windows Authentication using the System.Directory assemblies, I would like to request the addition of a new LDAP Authentication Provider based on the Novell.Directory.Ldap.NETStandard (https://github.com/dsbenghe/Novell.Directory.Ldap.NETStandard) project. This will allow developers to update to the latest ServiceStack while still providing a way to authenticate and authorize against a legacy/non-Azure Active Directory.

    24 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. Two Factor Authentication Feature

    Two Factor Authentication is a pretty standard thing nowadays, it even comes baked into the typical ASP.NET Core Identity system. It would be nice if Service Stack had this feature as well. We are working on porting a legacy application from ASP.NET to ServiceStack and this is a requirement for government applications (some form of TFA).

    23 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. Azure DocumentDB caching provider

    Support Azure DocumentDB as an available caching provider for Azure hosts.

    23 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. Add persistence support for Couchbase

    This shouldn't be too hard considering you seem to already support memcached..?

    20 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)
  9. Add Emailing functionality to Verify Account, Request Password Reset

    It would be a good idea for users when using Service Stack Authentication to have functionality like Asp.net Identity to Verify their account, reset their password.

    19 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. AutoQuery Azure DocumentDB Data Source

    Azure DocumentDB should be added among existing AutoQuery data source.

    19 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)
  11. support F# data type for serialization and deserialization

    This is specially for option type and discriminated unions. Currently it is not supported by Servicestack.Text. It would be great to have support for that.

    For

    type City = Abad | Pune

    [<CLIMutableAttribute>]
    type Person = {
    FirstName:string
    LastName: string option
    City : City
    }

    let p1 = {FirstName = "Foo"; LastName = Some "Bar"; City = Pune}

    let jss = new JsonStringSerializer()
    let p1Str = jss.SerializeToString(p1)

    It is serializing
    "{"FirstName":"Foo","LastName":{"Value":"Bar"},"City":{"Tag":1,"IsAbad":false,"IsPune":true}}"

    Where is should be
    "{"FirstName":"Foo","LastName":"Bar","City":"Pune"}"

    For reference https://github.com/Microsoft/fsharplu/wiki/fsharplu.json is library by MSR.

    It would be great to have this feature so DTO can be written in F# types. Currently…

    17 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)
  12. Add Navigation Properties To POCOs

    Entity Framework currently has navigation properties for foreign keys to other tables. Having this feature in OrmLite would be absolutely amazing.

    16 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. Support for Redis Streams (5.0+)

    Implement support for Redis 5.0+ Streams, as described here:

    https://redis.io/topics/streams-intro

    16 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. Response field filtering

    As per this example: http://www.vinaysahni.com/best-practices-for-a-pragmatic-restful-api#limiting-fields

    It would be useful to be able to restrict the returned fields provided by the response.

    Using a dot notation we could filter any nested properties as well. e.g.

    GET /customers/fields=id,name,address,address.postcode,address.line1

    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)
  15. Add Metrics.NET Adapter

    Add support for Metrics.NET: https://github.com/etishor/Metrics.NET

    They already have adapters for Nancy & Owin: https://github.com/etishor/Metrics.NET/tree/master/Src/Adapters

    I've also posted a question wheter the maintainer of Metrics.NET has any plan in doing it for ServiceStack in his repo: https://github.com/etishor/Metrics.NET/issues/101

    16 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)
  16. Enhance ServiceStack Razor page lookup options

    I have a custom basic CMS I put together (work in progress) for some of my clients that allows developers to build CMS plugins that auto-install on application startup. The plugins can deploy both content pages and view pages (and use ServiceStack plugins and CMS plugin interfaces to configure, and add capabilities to the CMS at startup), similar to how NopCommerce and Orchard work.

    Currently, I have to rely on view pages to be unique, but I would like to be able to modify the lookup algorithm to take advantage of paths to the razor/markdown pages in the Views folder,…

    15 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. Include XML documentation files in the NuGet releases

    It seems no XML documentation is shipped with NuGet packages. This makes discovery hard, for example with Intellisense in Visual Studio, and is a shame given that the documentation is already written.

    http://stackoverflow.com/questions/19719607/how-can-i-get-servicestacks-xml-documentation-to-show-in-visual-studio

    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)
  18. Backend Hosting Environment

    When starting a new project one always has to build a backend environment. This includes managing users, user groups, user password changes, etc. etc. This requires a backend database and an admin front-end.

    Currently, we use the ASPNETZERO framework for this purpose. https://aspnetzero.com/ But the support, documentation, and performance leave a lot of room for improvement.

    We're looking to move away from ASPNETZERO as soon as we can find a replacement. Currently, their pricing starts at $1500 a year for updates and support. Something that I would gladly pay, except the documentation and support they provide is horrible.

    It would…

    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)
  19. Allow customization of ModelDefinition in ORM Lite

    I need to be able to customize the ModelDefinition after it is generated by ORM Lite. I propose adding a method to IOrmLiteDialectProvider named CustomizeModelDefinition(ModelDefinition modelDef). In the base dialect providers, there are multiple methods used to create ModelDefinitions. I propose that all of those calls be routed through one method in OrmLiteConfig.GetModelMetadata(this Type modelType). In that method, after the model is created, it would invoke DialectProvider.CustomizeModelDefinition(modelDef). I downloaded and implemented this and tested it. It didn't take long and worked well. I would be happy to share the code.

    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)
  20. okta

    Add OKTA as a built-in authentication provider.

    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)
  • Don't see your idea?

Feature Requests

Categories

Feedback and Knowledge Base