Właściwości zmiany nazwy Json.Net podczas serializacji [duplikat]

To pytanie ma już tutaj odpowiedź:

Alternatywna nazwa właściwości podczas deserializacji 2 odpowiedzi

Mam bibliotekę, z którą się łączę, nad którą absolutnie nie mam kontroli. Obiekty są sformatowane przy użyciu nazw właściwości takich jak:

{"my property": "my value"}

i

{"my-property": "my value"}

Za pomocą json.net mogę dodać atrybut do właściwości w klasie, która reprezentuje każdą wiadomość, aby odwzorować te nazwy właściwości na właściwość w mojej klasie:

public class MyClass
{
  [JsonProperty(PropertyName="my-prop")]
  public String MyProperty {get; set;}
}

To jest w porządku, ale problem polega na tym, że muszę używać tych „magicznych ciągów” na dużej liczbie klas i naprawdę gardzę magicznymi strunami.

Dolna linia:

Czy jest jakiś sposób, aby zmienić wszystkie te właściwości na ciąg czytelny dla C #, tak aby mapowanie właściwości json.net odbywało się automatycznie?

to znaczy.:

{"my property": "my value"}

Powinien zmienić się na:

{"MyProperty": "my value"}

Podczas deserializacji, która następnie przepływałaby tę wartość do elementu MyProperty w MyClass, bez opisywania właściwości zakodowaną wartością ciągu.

questionAnswers(1)

yourAnswerToTheQuestion