public static void Main()
Console.WriteLine("Hello World");
POCO pocoObj = new POCO();
pocoObj.MaskVal2 = "MaskVal2";
pocoObj.Sub = new POCO_Sub{
SubMaskVal2 = "submaskval2",
POCO pocoSan = new POCO();
pocoObj.MaskVal2 = "xxxxxxxx";
pocoObj.Sub = new POCO_Sub{
SubMaskVal2 = "xxxxxxxxxxx",
string payload = JsonConvert.SerializeObject(pocoObj);
Console.WriteLine(payload);
string santizedPayload = MaskFullPayload(payload);
Console.WriteLine("===Masked===");
Console.WriteLine(santizedPayload);
string expectedpayload = JsonConvert.SerializeObject(pocoSan);
var expectedVal = "{\"Val1\":\"Val1\",\"MaskVal2\":\"xxxxxxxx\",\"Sub\":{\"SubVal1\":\"SubVal1\",\"SubMaskVal2\":\"xxxxxxxxxxx\",\"SubMaskVal3\":111}}";
Console.WriteLine(expectedpayload);
Console.WriteLine(santizedPayload == expectedVal);
public static string MaskFullPayload(string payload){
List<string> keys = "MaskVal2,SubMaskVal2,SubMaskVal3";
public string Val1{get;set;}
public string MaskVal2{get;set;}
public POCO_Sub Sub {get;set;}
public string SubVal1{get;set;}
public string SubMaskVal2{get;set;}
public int SubMaskVal3{get;set;}