AspNetCore.FSharpCompilerJson
1.0.8
See the version list below for details.
dotnet add package AspNetCore.FSharpCompilerJson --version 1.0.8
NuGet\Install-Package AspNetCore.FSharpCompilerJson -Version 1.0.8
<PackageReference Include="AspNetCore.FSharpCompilerJson" Version="1.0.8" />
paket add AspNetCore.FSharpCompilerJson --version 1.0.8
#r "nuget: AspNetCore.FSharpCompilerJson, 1.0.8"
// Install AspNetCore.FSharpCompilerJson as a Cake Addin #addin nuget:?package=AspNetCore.FSharpCompilerJson&version=1.0.8 // Install AspNetCore.FSharpCompilerJson as a Cake Tool #tool nuget:?package=AspNetCore.FSharpCompilerJson&version=1.0.8
This NuGet package provides the ability to integrate the FSharpCompiler.Json
into the ASP.NET to replace the built-in Json serializer.
The Usage
Build an ASP.NET Core Web App, and install following NuGet packages:
install-package Microsoft.AspNetCore.SpaServices.Extensions
install-package AspNetCore.FSharpCompilerJson
How to serialize The return value of the controller's actions as JSON
in Startup.cs
file, Modify the method ConfigureServices
to add dependency injection to it:
public void ConfigureServices(IServiceCollection services) {
...
FSharpCompilerJsonDependencyInjection.AddFSharpJson(services);
}
This configuration means that FSharpCompiler.Json
has been integrated into ASP.NET to replace the built-in json serializer.
[<HttpGet>]
member this.action() =
...
JsonResult data
data will be serialized as json using the FSharpCompiler.Json
serializer, which is ASP.NET's serializer.
The Method to read Request.Query
In a controller's actions, The Method to read Request.Query
is as follows:
[<HttpGet>]
member this.kvps() =
let kvps = this.Request.Query |> Query.toPairs
...
where the type of kvps
is seq<string*string>
.
For example, a request's url query string is:
?foo=bar&baz=[`qux`,`quux`]
The kvps corresponding to the query string are parsed as follows:
["foo","bar";"baz","[`qux`,`quux`]"]
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net5.0 is compatible. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. |
-
net5.0
- FSharp.Core (>= 6.0.0)
- FSharpCompiler.Json (>= 1.1.7)
- TaskBuilder.fs (>= 2.1.0)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
update fsharpcompiler.json