Сглаживание объекта в C # с разделенными ключами

Как взять вложенный объект и сгладить его с помощью ключей с разделителями? Другими словами, есть ли какая-нибудь библиотека C #, похожая на "плоский" https://www.npmjs.com/package/flat?

Пример:

var obj1 = {
    o1p1: "o1p1_Value",
    o1p2: "o1p2_Value"
};

var obj2 = {
    o2p1: "o2p1_Value",
    o2p2: obj1
};

var obj3 = flatten.flatten(obj2);

Вот obj3:

{ o2p1: 'o2p1_Value',
  'o2p2.o1p1': 'o1p1_Value',
  'o2p2.o1p2': 'o1p2_Value' }

person user3307256    schedule 13.04.2017    source источник
comment
Я бы посоветовал поискать библиотеки JSON, чтобы узнать, есть ли у них такая возможность. Возможно, этот вопрос поможет stackoverflow.com/questions/30389990/ или этот stackoverflow.com/questions/31046448/   -  person juharr    schedule 13.04.2017
comment
Я не думаю, что вы можете найти волшебный инструмент для этого в C #, поскольку selectmany linq будет работать на IEnumerable.   -  person BRAHIM Kamel    schedule 13.04.2017