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).
160 results found
-
Support AbortController API in servicestack-client
Allow a signal to be passed in when making requests via the client side lib servicestack-client.
11 votes -
Add a MQ Server support for Azure Storage Queues
Storage Queues are cheaper and more performant than azure service bus if guaranteed first-in-first-out, etc is not required.
They do offer 'At-Least-Once' guaranteed delivery, where Redis is 'fire and forget'.
Combining this with full featured CosmoDb caching instead of Redis would make a compelling low-cost option.
11 votes -
Add support for expand object graph on request by default out of the box
It would be great to have the option to expand by request descendant objects indicating route or getting href attribute with route by default.
10 votes -
10 votes
-
Abstraction for Cassandra and other common NoSQL option
NoSQL is an important piece of technology nowadays. I would like to see if I could have an abstraction layer for each NoSQL support so that I can switch easily,.
10 votes -
AutoQuery JsonB Support for PostgreSQL
It would be nice if AutoQuery supported querying blobbed objects with JsonB or some way to generate custom filters that work with JsonB
10 votes -
Implement Brotli compression support
Please implement Brotli compression support for request and response payloads. (-:
There exists a few C# libraries, like this one: https://github.com/XieJJ99/brotli.net
9 votes -
Postman v2 format support
right now, you cannot import postman metadata exposed by SS into the latest version of Postman because its complaining about v1 schema and conversion requires an insane amount of npm garbage to be installed.
any chance of adding v2 postman metadata, or links to v1 and 2?
9 votespostman2 support is currently available as a mix in:
https://docs.servicestack.net/releases/v5.11#postman-v2-collections
Please report any issues, we’ll look at eventually replacing the existing postman support in ServiceStack in the near future.
-
Add the ability to select the serialization mode(Array,Map) in plugin "MsgPack Format".
To MsgPack was really comfortable as JSON, you must add the possibility of setting "Map" mode. This will give more compatibility when migrating from one version to another, when service is updated, but clients have not yet had time.
9 votes -
9 votes
-
9 votes
-
Improve QueryStringSerializer.SerializeToString to use lowercase bools
Right now, bools are serialized uppercase since that's the default ToString behavior of .NET.
Consider changing this behavior by checking for bool when serializing and using .ToString().ToLower(), or introduce a setting to control this. It's web standard to use lowercase bools in query strings.
More info/discussion:
https://github.com/ServiceStack/Issues/issues/5868 votes -
Add SAML 2.0 auth provider
Add SAML 2.0 as built in auth provider. Really useful for Azure AD SSO.
8 votes -
add Trace method to ILog/Log
Add a Trace method to Log/ILog in do verbose logging
8 votes -
Ormlite Extend Transactions with ReadLock abilities
Current transaction isolation levels do not prevent others from reading and modifying the same data.
They all wait nice in line to be able to update the same rows, but there is no way of preventing them from overwriting the previous data, and no error message that the data you selected has become stale in between.An easy way to solve it to allow a way to lock the selected rows to assure that the current transaction is finished before the next one can read the value and do its own changes.
This is easely done by just adding a…
8 votes -
Encrypted messaging javascript client
We have message-level encryption and the corresponding .Net client library to use it. But I'd love to be able to call encrypted services from JavaScript. Ideally add to ss-utils.js, or because the encryption can get bulky, into a new ss-encrypt-utils.js.
8 votes -
Option to maintain references when serializing/deserializing.
My use-case is serializing compound DTO objects before sending them over the wire. There is no escaping the possibility that multiple references may exist. I can try to hack a solution that maintains references before/after serialization, but I really think this should be included in the serialization process as an option if at all possible.
There is already an older post on Stack Overflow about this, and I think (hope? ;) others would want the functionality as well.
I didn't want to bump that, so I'll add my comments here:
Currently, PCLs are significantly growing in popularity, as…
8 votes -
AppHostMqListenerBase: AppHost with automatically registered MQ message handlers
Create [self-hosted] apphost where all request messages are automatically registered to the MQ message service,
so that all services can be accessed via MQ without the need to register every request type manually with something like "mqServer.RegisterHandler<Hello>(...)" .It would be nice if the order of operations of the mq message handling could be further aligned to the http variant.
8 votes -
A registry of 3rd party plugins, features, etc.
Host or maintain a list of 3rd party ServiceStack extensions, similar to ngmodules.org for AngularJS, the listing capability of npmjs.org, or http://plugins.telerik.com/ for Telerik AppBuilder.
The list needs not be actively curated, but a single source where packages are listed and links to download / source code.
As the user base of ServiceStack grows, people are building more extensions that don't necessarily belong in the core modules, and this type of list would provide a great way of bringing attention to them, outside of hard-to-find NuGet packages.
8 votes -
Allow Join with UpdateOnly
Trying to UpdateOnly, when onlyField is typed as SqlExpression and the query has a Join an error will be thrown that says "The multi-part identifier "DepartmentJobCode.DepartmentId" could not be bound."
Example:
var jobsQuery = _db.From<dev.ScheduleEvent>()
.Join<dev.DepartmentJobCode>((se,jc)=> se.Job == jc.JobTitleId)
.Where<dev.DepartmentJobCode>(e => Sql.In(e.DepartmentId, departments))
.Update(x => new { x.Published, x.ModifiedBy});
db.UpdateOnly(new dev.ScheduleEvent { Published = false, ModifiedBy = userId}, onlyFields: jobsQuery);7 votes
- Don't see your idea?