./nugetz

#HAL

51 packages tagged with “HAL

pkg

HALJSonDeserializer

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

v1.1.5.329.1K
Hal-jsonHAL+JSONJSONHALdeserialize