New System.text.json Serialiser поддерживает установку политики именования следующим образом: < /p>
var options = new JsonSerializerOptions {
PropertyNamingPolicy = myPolicy
}
< /code>
Однако эти параметры применяются по всему событию сериализации. < /p>
Я хочу настроить свойства по -разному для разных классов. Я хочу, чтобы ключи класса A были сериализованы как все имена поля нижних регистра, в то время как клавиши класса B должны быть сериализованы как нижняя часть с специальным префиксом строки. />eg.
public class Product : Dictionary {
public string ProductId { get; set; }
public IList Stores { get; set; }
}
public class Store : Dictionary {
public string StoreId { get; set; }
}
...
IEnumerable products = GetProducts();
< /code>
Вывод ожидается для 'продуктов': < /p>
[
{
"productid": "1234",
"somefield": "fhsdjkfsd",
"stores": [
{
"storeid": "abc",
"prefix_somefield": "somevalue",
"prefix_foo": "bar"
},
{
"storeid": "def",
"prefix_another": "val"
}
]
},
{
"productid": "456",
"anotherfield": "fjaskdas"
}
]
Подробнее здесь: https://stackoverflow.com/questions/692 ... -per-class