44 lines
1.2 KiB
C#
44 lines
1.2 KiB
C#
using System;
|
|
using System.Text;
|
|
using xCommons.Extensions;
|
|
|
|
namespace xEventService.Extensions {
|
|
public static class XEventModelExtensions {
|
|
/// <summary>
|
|
/// Convert an Object to bytes array for publishing
|
|
/// </summary>
|
|
/// <param name="source"></param>
|
|
/// <typeparam name="T"></typeparam>
|
|
/// <returns></returns>
|
|
public static byte[] ToBody<T> (this T source) {
|
|
//
|
|
var json = source
|
|
.ToJSON ();
|
|
|
|
//
|
|
var result = json
|
|
.ToBytes ();
|
|
|
|
//
|
|
return result;
|
|
}
|
|
|
|
/// <summary>
|
|
/// Convert Recieved Bytes to Specific Type ...
|
|
/// </summary>
|
|
/// <param name="source"></param>
|
|
/// <typeparam name="T"></typeparam>
|
|
/// <returns></returns>
|
|
public static T FromBody<T> (this ReadOnlyMemory<byte> source) {
|
|
//
|
|
var jsonString = Encoding.UTF8
|
|
.GetString (
|
|
source.ToArray ()
|
|
);
|
|
var result = jsonString.FromJSON<T> ();
|
|
|
|
//
|
|
return result;
|
|
}
|
|
}
|
|
} |