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
-
Why 'Fmt'?
Why don't you use plain 'Format' instead?
1 vote‘fmt’ is a widely used abbreviation to mean format, as this is something that can used a lot we prefer its most abbreviated form to reduce the noise. If you prefer a longer name you can use the equivalent `.FormatWith()` extension method however both these APIs are effectively deprecated with C# 6’s new string interpolation.
Please ask questions in Customer Forums or StackOverflow: https://forums.servicestack.net
-
Change ServiceStackVS templates to Gulp
Gulp has got much better friction in the community than Grunt and many people already moved to Gulp completely. ServiceStack SPA templates use Grunt and leverage Gulp packages via grunt-gulp, which seems to be articifial. Wouldn't it be easier just to remove Grunt at all and make everything with Gulp instead?
12 votesAll Single Page App Templates have now been modernized in the latest v1.0.22 update:
https://github.com/ServiceStack/ServiceStack/blob/master/docs/2016/servicestackvs/v1.0.22.mdThey now use Gulp and JSPM and both React Templates are now pre-configured with TypeScript
-
6 votes
Support for this should’ve been added in v4.0.52, see: https://github.com/ServiceStack/ServiceStack/blob/master/docs/2016/release-notes.md#integrated-basic-auth
-
ORMLite - Add attribute to ignore property on updates
It'd be nice to have an attribute to apply to data DTOs that would cause them to be excluded if an update statement is executed.
Use case: Auditing
I have an IAudit interface that looks like (basically copied from Demis' answer here http://stackoverflow.com/questions/21803999/are-interceptors-possible-in-servicestack-ormlite)public IAudited{
string CreatedBy {get; set;}
DateTime CreatedDate {get;set;}
string ModifiedBy {get;set;}
string ModifiedDate {get;set;}
}Using OrmLite's insert filter makes it easy to generate values for the interface members when setting, as I can get the current user and Date and use them for both the Created and Modified fields. On an update though, I…
19 votesYou can use the [IgnoreOnUpdate] and [IgnoreOnInsert] to ignore properties on Update/Insert
-
Java Client: Add all fields on @ApiMember annotation to prevent compilation errors
For example if the API definitions has ExcludeInSchema set, the autogenerated DTOs do not compile due to unrecognized field on the annotation.
3 votesThese missing Attributes were added some time ago
-
Add support for non-ambient TypeScript module generation in ssutil
While having typing information in an ambient module (d.ts) is great for most use cases it doesn't cover the following two problems:
- Using enums declared in an ambient module: The enums are not compiled to JavaScript objects and can therefore not be used
- Creating instances of DTOs: You cannot create an instance of a DTO if it is an interface.
My suggestion is to have the possibility to create a normal TypeScript module with classes instead of interfaces and exported enums which can be compiled to JavaScript.
Currently the following ambient module is created
declare module api
{
interface MyDTO…11 votesSince this seems to be a popular option we’ve added a friendlier url to enable this option:
TypeScript module:
http://test.servicestack.net/types/typescriptDefinition file:
http://test.servicestack.net/types/typescript.dWe’ve also added an index containing links to all the supported languages at:
http://test.servicestack.net/types -
Add basic/digest authentication to AndroidServiceClient
Add built-in basic/digest authentication to the android JsonServiceClient/AndroidServiceClient
3 votesSupport for BasicAuth was added in 1.0.23 in this commit: https://github.com/ServiceStack/ServiceStack.Java/commit/80d0597f5dafa8f462fa86c2c78bfcfeeb4133d5
It uses the same API’s as the .NET ServiceClient, e.g client.setCredentials() and client.setAlwaysSendBasicAuthHeaders(true) if you always want the BasicAuth headers sent.
-
WebServiceException ToString Overrride
Hi, currently WebServiceException does not override to string , so that the base ToString() implementation which returns quite "unusefull" info
I suggest to override the ToString method of WebServiceException
to add info such as errorCode, errorMessage, StatusCode, .Responsestatus.Errors .. etc ..That would turn usefull, expecially when logging, since most logging mechanism dump the ex.ToString() ..
1 vote`WebServiceException.ToString()` was customized in this commit: https://github.com/ServiceStack/ServiceStack/commit/ee309c6c38c873cb11ee176aff59362ba19c8fcb
This change is available from v4.0.51 that’s now available on MyGet.
-
enum information in the metadata page
according to this http://stackoverflow.com/questions/22072109/is-there-a-way-to-have-a-servicestack-metadata-page-show-all-the-options-for-an
it's not possible to have enum information show up in the metadata page, but only in swagger .. it would be nice to have such allowed enum values in metadata page as well.
1 vote -
Deprecate or update docs.servicstack.net
Can you either shelve or update docs.servicestack.net? They appear to be very out-of-date, but keep showing up in search results. While most of the information is relevant, its incomplete and occasionally misleading.
19 votesWe’ve finally replaced this with our new Github-powered Docs website, check it out!
-
Allow debuggable Razor views
Microsoft's ASP.Net MVC allows users to set breakpoints in Razor views and debug them in Visual Studio. It would be splendid if ServiceStack could do the same
10 votesThanks for Uri Hendler for pointing it out, this has now been enabled from this commit: https://github.com/ServiceStack/ServiceStack/commit/e2825b9655cda28910b65bb306e82ceeb3b7e36a
You’ll be able to debug Razor Views in DebugMode of by explicitly setting RazorFormat.IncludeDebugInfo = true;
Available from v4.0.45+ that’s now on MyGet:
https://github.com/ServiceStack/ServiceStack/wiki/MyGet -
Make virtual some methods in OrmLiteAuthRepository
It's possibile to make inheritable some methods in OrmLiteAuthRepository class, to allow custom logics?
For example CreateUserAuth, UpdateUserAuth, CreateOrMergeAuthSession, GetPermissions/Role, Has Permission/Roles, etc
3 votesAll OrmLiteAuthRepository public API’s are now virtual from this commit: https://github.com/ServiceStack/ServiceStack/commit/487a64ee81a46fd5bcbf83a03d6dade5965ca6ed
This change is available from v4.0.43+ that’s now available on MyGet: https://github.com/ServiceStack/ServiceStack/wiki/MyGet
-
Allow LoadSingleById to selectively load references
Would like to replicate the functionality from this feature request in LoadSingleById: http://servicestack.uservoice.com/forums/176786-feature-requests/suggestions/6656885-allow-loadselect-to-selectively-load-references
4 votesThis has been implemented by Johann Klemmack and is now available in v4.0.48, see examples at: https://github.com/ServiceStack/ServiceStack/blob/master/docs/2015/release-notes.md#custom-load-references
-
Update fluent validation library
There are bug-fixes and improvements made to the original fluent validation source at:
15 votesFluent Validation has been updated to the latest release in v4.58:
http://docs.servicestack.net/releases/v4.5.8#fluent-validation-upgraded
Which also includes built-in support for Async Validators
-
Allow sub-select SqlExpression in Sql.In clauses
The Load* methods already do this internally (sort-of), but allow explicitly creating Where expressions that use a sub-select to get the IDs, instead of the Sql.In() utility. Or possibly reworking Sql.In to support a Select with a single column.
Something like this:
var customers = Db.From<Customers>().Where( ... my complex expression ... ).Select("Id");var orders = Db.Select<Orders>(q => Sql.In(q.CustomerId, customers);
3 votes -
Command Line/Buildserver support for ServiceStack references
We use the ServiceStackVS extension to generate TypeScript code for our service.
During development (when the API might still change) it would be really nice is we could generate the TypeScript code as a step in the build process to make sure our TypeScript projects are always build against the latest API (and fail when there are breaking changes).Although we currently only use the TypeScript generator I assume the same applies to the other languages as well.
7 votesssutil.exe was added in v4.0.42: https://github.com/ServiceStack/ServiceStack/wiki/Add-ServiceStack-Reference#ssutilexe---command-line-servicestack-reference-tool
-
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 votesSupport for SQL Server GEO types added in latest v4.0.44 release: https://github.com/ServiceStack/ServiceStack.OrmLite/wiki/SQL-Server-Types
OrmLite Type Converters now allows you to extend OrmLite to support new Types:
https://github.com/ServiceStack/ServiceStack.OrmLite/wiki/OrmLite-Type-Converters -
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 votesSupport for Typed JOIN aliases were added in v4.0.62: https://github.com/ServiceStack/ServiceStack.OrmLite#join-aliases
-
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 votesThe 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-mqA working example of this is available in TechStacks:
https://github.com/NetCoreApps/TechStacks#background-mq-serviceWhilst the Email Templates use-case shows an example of generating text + html emails with markdown:
http://templates.servicestack.net/usecases/email-templates -
OrmLite T4 templates doesn't generate Views
OrmLite T4 templates should generate Views,
3 votesNeed to change IncludeViews in OrmLite.Core.ttinclude to:
bool IncludeViews = true;
- Don't see your idea?