UdtClient 0.1.5
dotnet add package UdtClient --version 0.1.5
NuGet\Install-Package UdtClient -Version 0.1.5
<PackageReference Include="UdtClient" Version="0.1.5" />
<PackageVersion Include="UdtClient" Version="0.1.5" />
<PackageReference Include="UdtClient" />
paket add UdtClient --version 0.1.5
#r "nuget: UdtClient, 0.1.5"
#:package UdtClient@0.1.5
#addin nuget:?package=UdtClient&version=0.1.5
#tool nuget:?package=UdtClient&version=0.1.5
UdtClient
A lightweight, strongly-typed .NET client for working with User Defined Tables (UDTs) via HTTP APIs.
This library removes the need to manually construct JSON payloads by allowing you to use simple C# DTOs with attributes.
Why this exists
Working with UDT APIs typically requires building JSON payloads manually. This is:
- error-prone
- repetitive
- hard to maintain
UdtClient replaces that with strongly-typed C# DTOs, making your code cleaner and safer.
Quick Start
1. Register your DTOs
builder.Services.AddUdtClient(
options =>
{
options.BaseUrl = "https://your-host-name";
},
udt =>
{
udt.AddDto<CustomerInventoryReservationDto>();
});
[UdtTable("udt_customer_inventory_reservation")]
public sealed class CustomerInventoryReservationDto
{
[UdtUid]
public int RowUid { get; init; }
[UdtColumn("customer_id")]
public int CustomerId { get; init; }
[UdtColumn("item_id")]
public string ItemId { get; init; } = "";
}
Design Principles
- Explicit DTO registration (no automatic scanning)
- Strong validation at startup
- Exactly one UID per DTO
- No dynamic or string-based mapping
- Focused on UDT operations only (not an ORM)
Disclaimer
This project is not affiliated with, endorsed by, or supported by Epicor Software Corporation.
“Epicor” and “Prophet 21” are trademarks of Epicor Software Corporation. This library is an independent tool designed to work with compatible UDT APIs.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net8.0 is compatible. 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. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 was computed. 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. |
-
net8.0
- No dependencies.
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 0.1.5 | 69 | 5/3/2026 |