HALJSonDeserializer 1.1.5.3
dotnet add package HALJSonDeserializer --version 1.1.5.3
NuGet\Install-Package HALJSonDeserializer -Version 1.1.5.3
<PackageReference Include="HALJSonDeserializer" Version="1.1.5.3" />
paket add HALJSonDeserializer --version 1.1.5.3
#r "nuget: HALJSonDeserializer, 1.1.5.3"
// Install HALJSonDeserializer as a Cake Addin #addin nuget:?package=HALJSonDeserializer&version=1.1.5.3 // Install HALJSonDeserializer as a Cake Tool #tool nuget:?package=HALJSonDeserializer&version=1.1.5.3
This package can deserialize any String, Stream, or StreamReader (On HAL+JSON format or not) provided by a web api response.
Installation:
On the package console run :
Install-Package HALJSonDeserializer
Usage:
After installation you must include the namespace of the package where you will use it:
using haljson;
So now: suppose that you want to call a web api via "http://localhost:8080/customer" in your c# code and to parse it into your custom type called "Customer". This can be done simply as follows:
Customer theCustomer = HALJSonDeserializer.GetAndParse<Customer>("http://localhost:8080/customer");
For async call you can do this:
Customer theCustomer = await HALJSonDeserializer.GetAndParseAsync<Customer>("http://localhost:8080/customer");
If you have to retrieve a specific customer with FirstName and LastName as Arguments:
GetCustomerRequestArg arg = new GetCustomerRequestArg{FirstName="Bart",LastName="Hansen"};
Customer theCustomer = await HALJSonDeserializer .GetAndParseAsync<GetCustomerRequestArg, Customer>("http://localhost:8080/customer", arg);
What about the post request?
To post a request with parametters and receive a response you can do so:
Create a Class For your request arguments here "GetFullNameRequest" and an other Class for the response here "GetFullNameResponse".
GetFullNameRequest arg = new GetFullNameRequest{FirstName="Bart",LastName="Hansen"};
GetFullNameResponse fulName = await HALJSonDeserializer.PostAndParseResponseAsync<GetFullNameRequest,GetFullNameResponse>("http://localhost:8080/GetFullName",arg);
If you just want to deserialize a Stream, a StreamReader or a string, there are three extension methods for them. You can do that as follows:
Customer theCustomer = myStream.ToObject<Customer>(); //For a Stream
Customer theCustomer = myStreamReader.ToObject<Customer>(); //For a StreamReader
Customer theCustomer = myString.ToObject<Customer>(); //For a string
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET Framework | net452 is compatible. net46 was computed. net461 was computed. net462 was computed. net463 was computed. net47 was computed. net471 was computed. net472 was computed. net48 was computed. net481 was computed. |
This package has 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 |
---|---|---|
1.1.5.3 | 2,398 | 3/18/2016 |
1.1.5.2 | 1,375 | 3/17/2016 |
1.1.5.1 | 1,307 | 3/17/2016 |
1.1.5 | 1,295 | 3/17/2016 |
1.1.4 | 1,052 | 3/17/2016 |
1.1.3 | 1,366 | 3/17/2016 |
1.1.2 | 1,725 | 3/16/2016 |
1.1.1 | 1,049 | 3/16/2016 |
1.1.0 | 1,047 | 3/16/2016 |
1.0.21 | 1,495 | 3/16/2016 |
1.0.3 | 1,068 | 3/16/2016 |
1.0.2 | 1,306 | 3/16/2016 |
1.0.1 | 1,245 | 3/16/2016 |