У меня есть словарь, который я сериализую с помощью сериализатора json.net, и в настоящее время он производит
{"phrases":[{"Key":"my-key1","Value":"blah"},{"Key":"my-key2","Value":"blah2"}]}
однако я хочу, чтобы он выводил
{"phrases":["my-key1":"blah"},{"my-key2":"blah2"}]}
моя модель выглядит так
public class Phrases
{
public Dictionary phrases;
}
Есть ли атрибут данных I можно применить к модели фраз, чтобы это произошло?
Я обнаружил следующее, но не хочу возвращать строку Сериализировать в словарь ключ-значение с помощью Json.Net?
ОБНОВЛЕНИЕ:
Я расширяю контроллер веб-API следующим образом: если я использую JsonConvert.SerializeObject(), я получаю правильную сериализацию, однако тогда у меня будет возвращаемая строка.
public class PhraseController : ApiController
{
private IApplicationModel applicationModel;
public Phrases Get(string id)
{
var locale = new CultureInfo(id).LCID;
var phrases = applicationModel.Phrases.Where(x => x.Locale = locale).ToDictionary(x => x.Name, y => y.Value);
return new Phrases() { phrases = phrases };
}
public PhraseController(IApplicationModel applicationModel)
{
this.applicationModel = applicationModel;
}
}