Лучший способ получить дружественный к Json результат (.NET MVC) - PullRequest
2 голосов
/ 17 января 2009

Я сейчас использую ListItem() для результата в формате Json, но сгенерированный текст Json имеет дополнительное свойство под названием "selected = false", я знаю, что это используется для выпадающего списка, но я хочу, чтобы мое приложение работало быстрее, поэтому я не не хочу эту собственность. Знаете ли вы другой способ получить подобный результат?

Вот мой код:

List<ListItem> list = new List<ListItem>() {
    new ListItem() { Text = "Email", Value = "Pls enter your email" },
    new ListItem() { Text = "NameFull", Value = "Pls enter your full name" },
    new ListItem() { Text = "Sex", Value = "Pls choose your sex" }
};

Ответы [ 3 ]

6 голосов
/ 17 января 2009

Если вы используете ASP.NET MVC Beta, вы можете сериализовать любой объект в JSON, используя функцию Json и анонимные типы.

public JsonResult GetData() {
    var data = new { Text = "Email", Value = "Pls enter your email" }; 
    return Json(data);
}
2 голосов
/ 17 января 2009

В зависимости от вашего сериализатора JSON вы можете или не можете указать сериализатору игнорировать это свойство.

Вам лучше создать класс, в котором есть только те поля, которые вам нужны. например,

public class MyListItem
{
    public string Text { get;set; }
    public string Value { get;set; }
}

List<MyListItem> list = new List<MyListItem>() {
    new MyListItem() { Text = "Email", Value = "Pls enter your email" },
    new MyListItem() { Text = "NameFull", Value = "Pls enter your full name" },
    new MyListItem() { Text = "Sex", Value = "Pls choose your sex" }
};
0 голосов
/ 17 января 2009

Не используйте ListItem - используйте пользовательский тип, имеющий только те свойства, которые вам нужны.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...