refactor: Projektdateien migriert. Cloud-NuGet-Pakete durch lokale NuGet-Projekte ersetzt.
This commit is contained in:
42
HRD.WebApi/Helpers/JsonConvert.cs
Normal file
42
HRD.WebApi/Helpers/JsonConvert.cs
Normal file
@@ -0,0 +1,42 @@
|
||||
using System.IO;
|
||||
using System.Runtime.Serialization.Json;
|
||||
using System.Text;
|
||||
|
||||
namespace HRD.WebApi.Helpers
|
||||
{
|
||||
public static class JsonConvert
|
||||
{
|
||||
public static string Serialize<T>(T obj)
|
||||
{
|
||||
using (var stream = new MemoryStream())
|
||||
{
|
||||
GetSerializer<T>().WriteObject(stream, obj);
|
||||
return Encoding.UTF8.GetString(stream.ToArray());
|
||||
}
|
||||
}
|
||||
|
||||
public static T Deserialize<T>(string json)
|
||||
{
|
||||
using (var stream = new MemoryStream())
|
||||
{
|
||||
using (var writer = new StreamWriter(stream))
|
||||
{
|
||||
writer.Write(json);
|
||||
writer.Flush();
|
||||
stream.Position = 0;
|
||||
return (T)GetSerializer<T>().ReadObject(stream);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private static DataContractJsonSerializer GetSerializer<T>()
|
||||
{
|
||||
var settings = new DataContractJsonSerializerSettings
|
||||
{
|
||||
UseSimpleDictionaryFormat = true
|
||||
};
|
||||
|
||||
return new DataContractJsonSerializer(typeof(T), settings);
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user