Rask.Wire
0.20.1-alpha.0.247
dotnet add package Rask.Wire --version 0.20.1-alpha.0.247
NuGet\Install-Package Rask.Wire -Version 0.20.1-alpha.0.247
<PackageReference Include="Rask.Wire" Version="0.20.1-alpha.0.247" />
<PackageVersion Include="Rask.Wire" Version="0.20.1-alpha.0.247" />
<PackageReference Include="Rask.Wire" />
paket add Rask.Wire --version 0.20.1-alpha.0.247
#r "nuget: Rask.Wire, 0.20.1-alpha.0.247"
#:package Rask.Wire@0.20.1-alpha.0.247
#addin nuget:?package=Rask.Wire&version=0.20.1-alpha.0.247&prerelease
#tool nuget:?package=Rask.Wire&version=0.20.1-alpha.0.247&prerelease
Rask.Wire
The primitives Rask's generated wire codecs are written against. You do not normally call these yourself — a source generator emits the code that does — but the package is public because that generated code lands in your compilation and has to have something to call.
Three things live here:
WireJson— reflection-free readers and writers overUtf8JsonReader/Utf8JsonWriter, one per primitive shape. Each reader takes the property name it is reading so a mismatch reports "wire said X, expected Y" naming the property, rather than a stack trace from inside the serializer. They live in a package instead of being emitted so the message is written once and the generated file stays readable.RemoteFile— a file travelling to a server. The carrier only: a message declares the app-level file type, and the generated codec adapts it.FileDownload— a file travelling back. Named this rather thanFileResultso it does not collide withMicrosoft.AspNetCore.Mvcin an app that has both.
Why it is its own package
Rask.Cqrs and Rask.Api both generate codecs, and a codec should read the same on either wire. The
alternatives were both worse: duplicating these types puts two of each on the path of any app using
both packages, and making one depend on the other drags a mediator into an app that only wanted REST.
No reflection and no assembly scanning, so it publishes clean under the WASM/AOT trimmer.
Documentation: https://rask.sh
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net10.0 is compatible. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
-
net10.0
- No dependencies.
NuGet packages (2)
Showing the top 2 NuGet packages that depend on Rask.Wire:
| Package | Downloads |
|---|---|
|
Rask.Cqrs
Source-generated, reflection-free CQRS/mediator for .NET. Define `IQuery<T>`, `ICommand`, `ICommand<T>` and `INotification` messages with their handlers, then dispatch through `IDispatcher` with the response type inferred — no runtime reflection and no assembly scanning, so it publishes clean under the WASM/AOT trimmer. Pipeline behaviors provide the decorator hook for cross-cutting logging/validation/transactions. Standalone: depends only on Microsoft.Extensions.DependencyInjection.Abstractions. |
|
|
Rask.Api.Client
Call your own API controllers and minimal API endpoints from C# with no URL string at the call site. A source generator reads the endpoint declarations and emits one typed client per controller, with reflection-free JSON codecs, so the route, the verb, the request shape and the response shape cannot drift from the server. Publishes clean under the WASM/AOT trimmer. |
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 0.20.1-alpha.0.247 | 0 | 9/8/2026 |
| 0.20.1-alpha.0.246 | 0 | 9/7/2026 |
| 0.20.1-alpha.0.245 | 0 | 9/7/2026 |
| 0.20.1-alpha.0.243 | 0 | 9/7/2026 |
| 0.20.1-alpha.0.242 | 0 | 9/7/2026 |
| 0.20.1-alpha.0.241 | 0 | 9/7/2026 |
| 0.20.1-alpha.0.240 | 3 | 9/7/2026 |
| 0.20.1-alpha.0.238 | 20 | 9/7/2026 |
| 0.20.1-alpha.0.237 | 17 | 9/7/2026 |
| 0.20.1-alpha.0.236 | 25 | 9/7/2026 |
| 0.20.1-alpha.0.235 | 26 | 9/7/2026 |
| 0.20.1-alpha.0.234 | 33 | 9/7/2026 |
| 0.20.1-alpha.0.233 | 34 | 9/7/2026 |
| 0.20.1-alpha.0.232 | 27 | 9/7/2026 |
| 0.20.1-alpha.0.231 | 37 | 9/7/2026 |
| 0.20.1-alpha.0.230 | 34 | 9/7/2026 |
| 0.20.1-alpha.0.229 | 37 | 9/7/2026 |
| 0.20.1-alpha.0.228 | 70 | 9/4/2026 |
| 0.20.1-alpha.0.227 | 60 | 9/4/2026 |
| 0.20.1-alpha.0.226 | 70 | 9/4/2026 |