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

  1. Allow us to use Geography data type in Sql Server

    It would be nice to be able to take advantage of the Geography type in Sql Server... even better, I wonder if there would be a way to allow "us" to define custom classes for these more advanced data types that are built into a database.

    3 votes
    Vote
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    0 comments  ·  Flag idea as inappropriate…  ·  Admin →
  2. OrmLite Join Aliases

    Joining on the same table multiple times results in incorrect SQL being generated by OrmLite.

    Table aliases need to be added automatically by OrmLite so the correct SQL is generated when joining on the same table multiple times.

    14 votes
    Vote
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    2 comments  ·  Flag idea as inappropriate…  ·  Admin →
  3. Add Email Templating Engine

    Similar to ServiceStack Bundler, it'd be fantastic to have a node.js-powered email templating system for generating transactional emails with custom data payloads out of a SS app.

    It'd be great if the engine worked with simple html templates and CSS so that non-C# people can get involved. Something super simple to use and set up, but powerful in execution.

    This would make emails:

    - testable
    - collaborative (e.g. with frontend engineers)
    - iterable (easy transactional email multivariate testing?)
    - CSS automatic inlining
    - optional integration with litmus.com?

    18 votes
    Vote
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    2 comments  ·  Flag idea as inappropriate…  ·  Admin →

    The latest v5.2 release includes a powerful and easy to use template system which is ideal for non-devs to create email templates:

    https://docs.servicestack.net/releases/v5.2#servicestack-templates-remastered

    The Background MQ provides a great way to send emails in the background:
    http://docs.servicestack.net/background-mq

    A working example of this is available in TechStacks:
    https://github.com/NetCoreApps/TechStacks#background-mq-service

    Whilst the Email Templates use-case shows an example of generating text + html emails with markdown:
    http://templates.servicestack.net/usecases/email-templates

  4. OrmLite T4 templates doesn't generate Views

    OrmLite T4 templates should generate Views,

    3 votes
    Vote
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    0 comments  ·  Flag idea as inappropriate…  ·  Admin →
  5. Please InClude ParameterizedSqlExpression.cs to ServiceStack.OrmLiteV45 Project

    ParameterizedSqlExpression.cs not in ServiceStack.OrmLiteV45 Project, It affected use oracle provider in net framework 4.5.

    3 votes
    Vote
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    0 comments  ·  Flag idea as inappropriate…  ·  Admin →
  6. Show required authentication & Authorization within metadata page

    I'd like to have the DTO required(set at DTO and/or service level using current attributes) Authentication & Authorization(roles+permissions) showed within the metadata page, among other operation/dto details.

    See SO question http://stackoverflow.com/questions/29693572/how-to-show-authentication-authorization-within-metadata-operation-page.

    6 votes
    Vote
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    0 comments  ·  Flag idea as inappropriate…  ·  Admin →
  7. visual studio 2015 extension

    Service Stack extension for visual studio does not work in visual studio 2015. please add this extension

    9 votes
    Vote
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    1 comment  ·  Flag idea as inappropriate…  ·  Admin →
  8. Ability to override OrmLiteCacheClient to change CacheEntry table name

    However it would be best to accomplish, it would be rad to be able to have our own Alias for the CacheEntry object inside OrmLiteCacheClient. We are sharing a database between multiple web apps, but don't want to share the same CacheEntry table.

    1 vote
    Vote
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    0 comments  ·  Flag idea as inappropriate…  ·  Admin →
  9. 57 votes
    Vote
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    4 comments  ·  Flag idea as inappropriate…  ·  Admin →
  10. Flag MyGet builds as nightly, beta, alpah, pre-release

    If the MyGet builds are marked as pre-release then it will be easy to move between MyGet builds for the same version number and also easier to upgrade to the NuGet stable build when it is released.

    I deploy to Azure Web Sites which does the nuget package restore and full solution build for me. In order to move between MyGet builds or move to the stable NuGet build, I have to log in and manually delete the package cache on every site. If the MyGet builds had their own unque version number, upgrades would be easier.

    5 votes
    Vote
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    1 comment  ·  Flag idea as inappropriate…  ·  Admin →
  11. More Oauth/Oauth2 integration

    It would be very interesting to have a better integration with oauth protocols.

    Some ideas:
    1. Authentication/authorization provided directly by SS. At moment is possible to use oauth, but only with some external libraries (DotNetOpenAuth or others).

    2. The Access Token could be released with some oauth permissions defined in a global configuration setting. When the client request an access token, the request must contains a list of permission (like facebook, twitter and others API)

    3. The permissions can be used for authorize some services only if the oauth access token provided in the request is valid for it. For…

    17 votes
    Vote
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    1 comment  ·  Flag idea as inappropriate…  ·  Admin →

    We’ve improved OAuth integration in v4.5.8 where you can now Authenticate using an AccessToken in Facebook, Twitter, Github and Google Auth Providers:

    http://docs.servicestack.net/releases/v4.5.8#integrated-facebook-twitter-and-google-logins

    This feature now enables auto-Sign Ins in Mobile / Desktop Apps using a saved Access Token.

    Please submit separate feature requests for any other individual features you’d like to see.

  12. Replace System.IO.MemoryStream with Microsoft.IO.RecycableMemoryStream

    Refer to http://www.codeproject.com/Articles/873615/Announcing-Microsoft-IO-RecycableMemoryStream

    Quote:
    Microsoft.IO.RecyclableMemoryStream is a MemoryStream replacement that offers superior behavior for performance-critical systems. In particular it is optimized to do the following:

    Eliminate Large Object Heap allocations by using pooled buffers
    Avoid memory leaks by having a bounded pool size
    Avoid memory fragmentation
    Provide excellent debuggability
    Provide metrics for performance tracking

    0 votes
    Vote
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    2 comments  ·  Flag idea as inappropriate…  ·  Admin →
  13. Allow LoadSelect to selectively load references

    Akin to the EF "Include" method, enhance OrmLite's LoadSelect method to take an optional string array of references to load. For performance reasons, I don't always want to load all references to an object, particularly if its a central object like Account or User. As a coding efficiency measure, it'd be great to pass in a list of only the reference objects or properties that are relevant to the code snippet.

    10 votes
    Vote
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    1 comment  ·  Flag idea as inappropriate…  ·  Admin →
  14. Customize Auth DTO Response

    Currently if we want to customize the Auth DTO Response in Credential Auth Provider, we must to rewrite the Auth Feature,the Authentication Service and the Credential Provider.
    It would be useful to be able to set a custom auth DTO Response.

    At this time there isn't a simple solution.
    I found this post on stackoverflow that explains the problem in details:

    http://stackoverflow.com/questions/16280319/return-a-custom-auth-response-object-from-servicestack-authentication

    9 votes
    Vote
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    0 comments  ·  Flag idea as inappropriate…  ·  Admin →

    You can use the Meta string Dictionary to extend the AuthenticateResponse with additional custom info, but we’re not planning on trying to support for switching the AuthenticateResponse DTO entirely and breaking the Service Contract.

  15. Service Stack OrmLite 4.0.34 does not return result set for async version

    4.0.34 version of ormlite gives null for an async call
    for example

    // user1 is not null in this case
    var user1 = db.Single(db.From<Users>().Where(x => x.UserPartyId == userPartyId).Select());

    // user2 is null in this case
    var user2 = await db.SingleAsync(db.From<Users>().Where(x => x.UserPartyId == userPartyId).Select());

    1 vote
    Vote
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    0 comments  ·  Flag idea as inappropriate…  ·  Admin →
  16. 48 votes
    Vote
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    8 comments  ·  Flag idea as inappropriate…  ·  Admin →
  17. Implement SQL Server 2012 Paging with OFFSET and FETCH

    Add and option to use "SQL Server 2012" features/dialect and use OFFSET and FETCH for paging.

    The new SQL Server 2012 paging feature will offer better performance and generated sql will be easier to understand.

    http://www.mssqltips.com/sqlservertip/2696/comparing-performance-for-different-sql-server-paging-methods/

    21 votes
    Vote
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    2 comments  ·  Flag idea as inappropriate…  ·  Admin →
  18. .UrlEncode(... bool lowerCase = true)

    Possibility to choose UPPER Casing for URL Encoding's ie %2F, as many public API using OAuth use upper cased encoding for signing.

    see http://oauth.net/core/1.0a/#signing_process

    3 votes
    Vote
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    2 comments  ·  Flag idea as inappropriate…  ·  Admin →
  19. Endpoint Configuration Discovery

    In WCF, I can create a udp endpoint discovery to allow client finding the service without knowing the endpoint addresses.

    Is there a similar approach using restful servicestack so that the client could discover the end point addresses using some kind of discovery detection ?

    13 votes
    Vote
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    1 comment  ·  Flag idea as inappropriate…  ·  Admin →
  20. add meta documentation page for response object

    Right now only request object is parsed for ApiMember attributes to generate documentation page. We've added support to parse all properties and show documentation for "subtypes".

    Is it that much more work to add documentation to parse response object in similar manner? And show documentation for it as well?

    Ideally it'd be in sections on the meta doc page.
    Request
    request types

    Response
    response types

    I can take a stab at it, but might misdesign again.

    4 votes
    Vote
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    2 comments  ·  Flag idea as inappropriate…  ·  Admin →
  • Don't see your idea?

Feature Requests

Categories

Feedback and Knowledge Base