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).
-
Add ".dll" to AllowFileExtension, and add dll => "application/octet-stream" MimeTypes
The new WebAssembly feature being added to mainstream browsers will download .dll files to the browser. To make it possible to serve static .dll fiiles by default, please add .dll files as mimeType application/octet-stream, and allow these types of files by default.
1 voteThis is now added by default from v5.1.1 on MyGet
-
Add ".wasm" to AllowFileExtensions and associate MimeType "application/wasm"
WebAssembly is a new binary format for static files. The official site has more info. https://webassembly.org/
Google for webassembly mimetype w3c will return many results showing the addition of this file extension and Mimetype in other mainstream servers.
1 votewasm has been added to ServiceStack from v5.1.1 which is now available on MyGet:
http://docs.servicestack.net/myget -
Batching support for Typescript JsonServiceClient
I would like to get the batching support for the Typescript JsonServiceClient as it is supported by the C# JsonServiceClient.
6 votessupport for new sendAll and sendAllOneWay APIs was added in v1.0.9 that’s now on npm.
-
first install Method not found: 'Void ServiceStack.JS.Configure()'.
Line 7: protected void Application_Start(object sender, EventArgs e)
Line 8: {
Line 9: new AppHost().Init();
Line 10:
Line 11: }1 voteYou likely have dirty versions installed. Ensure all dependencies are referencing the same version of ServiceStack, clean your NuGet cache (e.g. `nuget locals all -clear`) then restore.
Please submit future issues to https://github.com/ServiceStack/Issues
-
Support for filtering DTO's by namespace
It'll be really useful to be able to define namespaces for DTO filtering. Currently I can specify Types to include or exclude but doing it by namespace will be much more useful in situations where there are too many types to include or exclude.
3 votesYou can include a Request DTO and all its dependent Types it references with a .* suffix, e.g:
IncludeTypes: MyRequest.*
You can also include all types with a C# namespace with the /* suffix, e.g:
IncludeTypes: MyApp.ServiceModel.Admin/*
This change is available from v5.0.3 that’s now available on MyGet.
-
Support ServerEventsClient in .NET Core
My server needs to be able to push messages to my app. Unfortunately, I'm running ServiceStack.Client.Core in a .NET Standard library, which means my app does not have access to ServerEventsClient. Having the ability to use ServerEventsClient in .NET Standard libraries would be amazing.
3 votesNot sure what makes you think otherwise but ServerEventsClient is definitely available in ServiceStack.Client.Core: https://imgur.com/a/l1mDp
-
IAppSettings implementation for new appsettings.json configuration format.
Asp.NET Core defaults to use a json base appsettings.json configuration. Right now SS has no support for the new standard. I would like to have an IAppSettings implementation for the new format. Maintain different configuration files is less than optimal.
7 votesNow available with the new NetCoreAppSettings in ServiceStack v5. Please see ServiceStack v5 changes for more info:
https://forums.servicestack.net/t/myget-pre-release-packages-upgraded-to-v5/4749
-
Enum Serialization and Typescript String Enums
I understand if this is changed it may break projects based on Typescript < 2.4. I propose a new flag or option to serialize enum strings as enum strings instead of string literals. This would minimally allow us to get access to the list of strings available for an enum which is not readily available with a string Literal.
Instead of this:
export type MessagePriority = "Normal" | "Low" | "High";
It would be:
export enum MessagePriority{
Normal = "Normal",
Low = "Low",
High = "High"
}13 votesv5.2 now defaults to string enums
http://docs.servicestack.net/releases/v5.2#typescript -
ServiceStack .NET Core 2 React Template
It would be nice if you had a (vanilla JS) ServiceStack .NET Core 2 + React template project (without typescript).
6 votesWe’ve developed new .NET Core 2.0 and .NET Framework templates in ServiceStack v5. Info about ServiceStack v5 and the new .NET Core SPA templates are available from:
https://forums.servicestack.net/t/myget-pre-release-packages-upgraded-to-v5/4749
-
78 votes
We’ve added full support for VS.NET 2017 in the latest v4.5.10 release: http://docs.servicestack.net/releases/v4.5.10
All ServiceStackVS Single Page App templates have also been converted to use Webpack and we’ve added a new template for Vue.js! The release notes contains an overview of Webpack and covers the different template built-in features.
If you’re building ServiceStack from source you’ll notice we’ve switched to VS2017 new MSBuild format in all ServiceStack NuGet packages which is much cleaner and simpler for managing builds for different platforms.
-
ServiceStack .Net Core and Angular 2 Template
The actual idea
30 votesWe’ve developed new .NET Core 2.0 and .NET Framework templates in ServiceStack v5. Info about ServiceStack v5 and the new .NET Core SPA templates are available from:
https://forums.servicestack.net/t/myget-pre-release-packages-upgraded-to-v5/4749
-
Provide option to set Referer header on service client.
Due to it being a restricted header, the referer cannot be set using the standard header methods. In order to set the referer on a standard http web request, you must use the referer property. I would like to suggest that this header be accessible from the client.
1 voteJust use a Request Filter, e.g:
var client = new JsonServiceClient(baseUrl) {
RequestFilter = req => req.Referer = referer
}; -
Show plugin startup errors on metadata screen
Add a visual indicator which links to or has a label that contains any plugin startup errors on the metadata page.
Given that they are swallowed to prevent the apphost from crashing it is not always obvious unless you check the operations metadata.
3 votesFrom v4.5.7 (now on MyGet) the number of Startup Errors will appear in X-Startup-Errors HTTP Response Header (visible when viewing HTTP Responses) and when in DebugMode a warning banner will appear on the /metadata page.
-
ServiceStack.OrmLite.Core Mysql support.
I'd like to see a mysql integration.
18 votes.NET Core support for MySql was added in v4.0.46 in the ServiceStack.OrmLite.MySql.Core NuGet package:
http://docs.servicestack.net/releases/v4.5.6#net-core-support-for-mysql
-
Exclude or Include by route prefix/subfix when add servicestack reference
when add a service stack reference we can use include types and exclude types.
could you add include / exclude by route.
so, we can configure reference like this way.
//include route "/mobile%"
or
//include route "%mobile%"1 voteThe IncludeTypes DTO option provides a couple of different wildcards for specifying types:
http://docs.servicestack.net/csharp-add-servicestack-reference#includetypes
-
SSE Java Client
Besides a C# and Javascript SSE Client, it woud be greate to have a Java SSE Client ,too.
4 votesSupport for Java Server Events Client has been added in v4.5.8: http://docs.servicestack.net/releases/v4.5.8#java-server-events
Documentation is available at: http://docs.servicestack.net/java-server-events-client
An Android Java Chat App that makes use of Java Server Events is available at:
https://github.com/ServiceStackApps/AndroidJavaChat/ -
Add ServiceStack + Microsoft On-Premise ServiceFabric example
Could someone please provide an example of using ServiceStack in the Microsoft On-Premise ServiceFabric PaaS. Maybe show an example of a Monolithic and Microservices configuration.
6 votesWe’ve developed a simple Service Fabric + ServiceStack example at:
https://github.com/ServiceStackApps/HelloServiceFabric -
Update the servicestack-client typescript pacakge to include .d.ts files in npm
Creating new Angular 2.0 projects with the angular CLI is simpler if all the packages required include their typescript definition files in their npm package which allows the types to be registered by calling : npm install @types/servicestack-client instead of having to rely on using typings. Please consider updating your npm pacakge to include the typescript definition files for the typescript client.
3 votesFrom v4.0.46 we’re shipping Types inside the servicestack-client npm package
-
Android Java Server Events Client
With Service Stack you can create very good backend, it would be nice to use all functions that it provides of Android, without Xamarin because Android is the most popular platform for mobile devices.
For a complete happiness is not enough to us now server events so we do request every 5 seconds to check for data.
Please make the ability to use server events on Android.
Thanks!
9 votesSupport for Java Server Events Client has been added in v4.5.8: http://docs.servicestack.net/releases/v4.5.8#java-server-events
Documentation is available at: http://docs.servicestack.net/java-server-events-client
An Android Java Chat App that makes use of Java Server Events is available at:
https://github.com/ServiceStackApps/AndroidJavaChat/ -
Typescript and C# Enums: option for string literal types
We already proposed https://servicestack.uservoice.com/forums/176786-feature-requests/suggestions/10105086-add-support-for-non-ambient-typescript-module-gene
We are using this and it works well, but unfortunately there is one issue: enums!
We serialize the enums as strings and not integers.
In typescript world this all works fine, the enums are in the generated DTO's and the compiler is happy. But on the wire there is the Enum as a string instead of an integer which typescript can't map back to the typed dto. so all my typescript code doesn't work anymore.
We end up doing:
myAnimal.AnimalType.ToString() === dtos.AnimalType[dtos.AnimalType.Rabbit]
which is working but doesn't feel "right". From a typescript point of view we…
30 votesWe’ve added support for emitting string literal types for string enums in v4.0.62: https://github.com/ServiceStack/ServiceStack/blob/master/docs/2016/v4.0.62.md#enum-support
- Don't see your idea?