Я хочу создать объект Json.NET, используя инициализаторы объектов для коллекций.
Я могу сделать:
JObject jsonObject = new JObject { { "Date", DateTime.Now }, { "obj", new JObject { { "string", "bla" } } } };
Теперь я хочу сделать, например:
var j=new HashSet<int> { 5 };
JObject jsonObject = new JObject { { "hashset", j } };
Но я получаю ошибку, потому что нет неявного преобразования из HashSet в JToken
Это работает:
var j=new HashSet<int> { 5 };
JObject jsonObject = new JObject { { "hashset", JToken.FromObject(j) } };
но очень многословно для сложной конструкции.
К сожалению, я не могу использовать методы расширения для добавления неявного преобразования из HashSet в JToken, что, вероятно, было бы идеально.
Есть ли другие способы решить эту проблему?